PHP JSON 函数
PHP JSON 介绍
JSON 扩展实现了 JavaScript Object Notation 数据交换格式。
在 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 | Integer | 没有发生错误 |
JSON_ERROR_DEPTH | Integer | 已超过最大堆栈深度 |
JSON_ERROR_STATE_MISMATCH | Integer | 无效/格式错误的 JSON |
JSON_ERROR_CTRL_CHAR | Integer | 控制字符错误 |
JSON_ERROR_SYNTAX | Integer | 语法错误 |
JSON_ERROR_UTF8 | Integer | 格式错误的 UTF-8 字符。 PHP 5.3 |
JSON_ERROR_RECURSION | Integer | 无效的递归引用值。 PHP 5.5 |
JSON_ERROR_INF_OR_NAN | Integer | 无效的 NAN 或 INF 值。 PHP 5.5 |
JSON_ERROR_UNSUPPORTED_TYPE | Integer | 类型无效。 PHP 5.5 |
JSON_ERROR_INVALID_PROPERTY_NAME | Integer | 属性名称无效。 PHP 7.0 |
JSON_ERROR_UTF16 | Integer | 格式错误的 UTF-16 字符。 PHP 7.0 |
JSON_BIGINT_AS_STRING | Integer | |
JSON_OBJECT_AS_ARRAY | Integer | |
JSON_HEX_TAG | Integer | |
JSON_HEX_AMP | Integer | |
JSON_HEX_APOS | Integer | |
JSON_HEX_QUOT | Integer | |
JSON_FORCE_OBJECT | Integer | |
JSON_NUMERIC_CHECK | Integer | |
JSON_PRETTY_PRINT | Integer | |
JSON_UNESCAPED_SLASHES | Integer | |
JSON_PARTIAL_OUTPUT_ON_ERROR | Integer | |
JSON_PRESERVE_ZERO_FRACTION | Integer | |
JSON_UNESCAPED_LINE_TERMINATORS | Integer | |
JSON_INVALID_UTF8_IGNORE | Integer | |
JSON_INVALID_UTF8_SUBSTITUTE | Integer | |
JSON_THROWN_ON_ERROR | Integer |