天天看点

深度剖析:PHP中json_encode与json_decode

一、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。

示例:

  浏览器打印出的结果如下:

二、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。

深度剖析:PHP中json_encode与json_decode
深度剖析:PHP中json_encode与json_decode

浏览器打印出的结果如下:

两个结果看起来没多大区别,但调用里面的元素时,array和obj的方式是不同的。  

深度剖析:PHP中json_encode与json_decode
深度剖析:PHP中json_encode与json_decode

   打印结果如下:

如何联系我:【万里虎】www.bravetiger.cn

【QQ】3396726884 (咨询问题100元起,帮助解决问题500元起)

【博客】http://www.cnblogs.com/kenshinobiy/