PHP中JSON处理

json_encode

  • json_encode 目前只能处理UTF-8编码的数据

  • JSON_UNESCAPED_UNICODE 让JSON更懂中文

  • 解析出错,看 json_last_error() 返回的错误

  • JSON格式是灵活开放的,特殊情况可以用sprintf来自己组装或者解析JSON字符串

语法:

string json_encode ( mixed $value [, int $options = 0 [, int $depth = 512 ]] )

参数:

  • JSON_HEX_TAG 所有的 < 和 > 转换成 \u003C 和 \u003E

  • JSON_HEX_AMP 所有的 & 转换成 \u0026

  • JSON_HEX_APOS 所有的 ' 转换成 \u0027

  • JSON_HEX_QUOT 所有的 " 转换成 \u0022

  • JSON_FORCE_OBJECT 强制使用索引数组输出

  • JSON_NUMERIC_CHECK 将所有数字字符串编码成数字

  • JSON_BIGINT_AS_STRING 将大数字编码成原始字符原来的值

  • JSON_PRETTY_PRINT 用空白字符格式化返回的数据

  • JSON_UNESCAPED_SLASHES 不要编码 /

  • JSON_UNESCAPED_UNICODE 以字面编码多字节 Unicode 字符(默认是编码成 \uXXXX)

示例

JSON_PRETTY_PRINT ,有的时候需要查看,所以中格式化的效果更美观

结果:

json_encode($b, JSON_FORCE_OBJECT) 可以强制转换成对象

json_decode

拼装json

简单示例:

结果:

封装函数:

Last updated

Was this helpful?