PHP JSON 函数

PHP JSON 简介

JSON 扩展实现了 JavaScript 对象表示法数据交换格式。

在 PHP 5 中,解码由基于 Douglas Crockford 的 JSON_checker 的解析器处理。

PHP 7 有一个新的、改进的解析器,专门为 PHP 编写,并根据 PHP 许可证获得许可。

安装

从 PHP 5.2.0 开始,JSON 函数默认启用。使用这些函数不需要进行任何安装。

PHP JSON 函数

函数 描述
json_decode() 解码 JSON 字符串。
json_encode() 将值编码为 JSON 格式。
json_last_error() 返回最后发生的错误。
json_last_error_msg() 返回最后一次 json_encode() 或 json_decode() 调用的错误字符串。

PHP 预定义 JSON 常量

常量 类型 描述
JSON_ERROR_NONE 整数 未发生错误。
JSON_ERROR_DEPTH 整数 已超出最大堆栈深度。
JSON_ERROR_STATE_MISMATCH 整数 JSON 无效/格式错误。
JSON_ERROR_CTRL_CHAR 整数 控制字符错误。
JSON_ERROR_SYNTAX 整数 语法错误。
JSON_ERROR_UTF8 整数 UTF-8 字符格式错误。PHP 5.3
JSON_ERROR_RECURSION 整数 递归引用值无效。PHP 5.5
JSON_ERROR_INF_OR_NAN 整数 INF 或 NAN 值无效。PHP 5.5
JSON_ERROR_UNSUPPORTED_TYPE 整数 类型无效。PHP 5.5
JSON_ERROR_INVALID_PROPERTY_NAME 整数 属性名无效。PHP 7.0
JSON_ERROR_UTF16 整数 UTF-16 字符格式错误。PHP 7.0
JSON_BIGINT_AS_STRING 整数
JSON_OBJECT_AS_ARRAY 整数
JSON_HEX_TAG 整数
JSON_HEX_AMP 整数
JSON_HEX_APOS 整数
JSON_HEX_QUOT 整数
JSON_FORCE_OBJECT 整数
JSON_NUMERIC_CHECK 整数
JSON_PRETTY_PRINT 整数
JSON_UNESCAPED_SLASHES 整数
JSON_PARTIAL_OUTPUT_ON_ERROR 整数
JSON_PRESERVE_ZERO_FRACTION 整数
JSON_UNESCAPED_LINE_TERMINATORS 整数
JSON_INVALID_UTF8_IGNORE 整数
JSON_INVALID_UTF8_SUBSTITUTE 整数
JSON_THROWN_ON_ERROR 整数