美文网首页
2018-07-06 json_encode 和 json_d

2018-07-06 json_encode 和 json_d

作者: 土豆丝炒洋芋丝 | 来源:发表于2018-07-06 18:40 被阅读0次

    一、json_encode() 对变量进行JSON编码,
    语法: json_encode ( value [,options = 0 ] )
    注意:
    1、$value为要编码的值,且该函数只对UTF8编码的数据有效;

    2、options:由以下常量组成的二进制掩码:JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP,JSON_HEX_APOS,JSON_NUMERIC_CHECK,JSON_PRETTY_PRINT,JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT;

    3、第二个参数一般不需要;

    4、json数据其实就是一个string,可以用var_dump()打印出来看数据类型;

    5、执行成功返回JSON数据,否则返回FALSE。

    示例:

    $book = array('a'=>'xiyouji','b'=>'sanguo','c'=>'shuihu','d'=>'hongloumeng');
    $json = json_encode($book);
    echo $json;
    

    在浏览器中打印出来

    {"a":"xiyouji","b":"sanguo","c":"shuihu","d":"hongloumeng"}
    

    二、json_decode() 对JSON数据进行解码,转换为PHP变量
    语法:json_decode (json [,assoc = false [, depth = 512 [,options = 0 ]]])
    注意:
    1、$json 为待解码的数据,必须为utf8编码的数据;

    2、$assoc 值为TRUE时返回数组,FALSE时返回对象;

    3、$depth 为递归深度;

    4、$option 二进制掩码,目前只支持 JSON_BIGINT_AS_STRING;

    5、一般只用前面两个参数,如果要数据类型的数据要加一个参数true。

    示例:

      $book = array('a'=>'xiyouji','b'=>'sanguo','c'=>'shuihu','d'=>'hongloumeng');
           $json = json_encode($book);
          
           $array = json_decode($json,TRUE);
           $obj = json_decode($json);
           var_dump($array);
           var_dump($obj);
    
    <pre style="margin: 0px; padding: 0px; white-space: pre-wrap; word-wrap: break-word; font-family: &quot;Courier New&quot; !important; font-size: 12px !important;">$book = array('a'=>'xiyouji','b'=>'sanguo','c'=>'shuihu','d'=>'hongloumeng'); $json = json_encode($book); $array = json_decode($json,TRUE); $obj = json_decode($json); var_dump($array); var_dump($obj);</pre>
    
    
    
    浏览器打印出的结果如下:
    
    
    
    两个结果看起来没多大区别,**但调用里面的元素时,array和obj的方式是不同的**。  
    

    打印结果如下:

    相关文章

      网友评论

          本文标题:2018-07-06 json_encode 和 json_d

          本文链接:https://www.haomeiwen.com/subject/tnpbuftx.html