PHP json_encode() 函数
定义和用法
json_encode()
函数用于将值编码为 JSON 格式。
实例
例子 1
如何将关联数组编码为 JSON 对象:
<?php
$age = array("Bill"=>35, "Elon"=>37, "Steve"=>43);
echo json_encode($age);
?>
例子 2
如何将索引数组编码为 JSON 数组:
<?php
$cars = array("Volvo", "BMW", "Toyota");
echo json_encode($cars);
?>
语法
json_encode(value, options, depth)
参数 | 描述 |
---|---|
value | 必需。指定要编码的值。 |
options | 可选。指定位掩码(JSON_FORCE_OBJECT、JSON_HEX_QUOT、JSON_HEX_TAG、JSON_HEX_AMP、JSON_HEX_APOS、JSON_INVALID_UTF8_IGNORE、JSON_INVALID_UTF8_SUBSTITUTE、JSON_NUMERIC_CHECK、JSON_PARTIAL_OUTPUT_ON_ERROR、JSON_PRESERVE_ZERO_FRACTION、JSON_PRETTY_PRINT、JSON_UNESC APED_LINE_TERMINATORS、JSON_UNESCAPED_SLASHES、JSON_UNESCAPED_UNICODE、JSON_THROW_ON_ERROR) |
depth | 可选。指定最大深度。 |
技术细节
返回值: | 成功时返回 JSON 编码的字符串。失败时返回 FALSE。 |
---|---|
PHP 版本: | 5.2+ |
PHP 更新日志:
PHP 7.3:添加了 JSON_THROWN_ON_ERROR 选项
PHP 7.2:添加了 JSON_INVALID_UTF8_IGNORE 和 JSON_INVALID_UTF8_SUBSTITUTE 选项
PHP 7.1:添加了 JSON_UNESCAPED_LINE_TERMINATORS 选项
PHP 5.6:添加了 JSON_PRESERVE_ZERO_FRACTION 选项
PHP 5.5:添加了 depth 参数
PHP 5.5:添加了 JSON_PARTIAL_OUTPUT_ON_ERROR 选项
PHP 5.5:将失败时的返回值从 null 更改为 FALSE
PHP 5.4:添加了 JSON_PRETTY_PRINT、JSON_UNESCAPED_SLASHES 和 JSON_UNESCAPED_UNICODE 选项
PHP 5.3:添加了 JSON_FORCE_OBJECT、JSON_HEX_AMP、JSON_HEX_APOS、JSON_HEX_QUOT、JSON_HEX_TAG 和 JSON_NUMERIC_CHECK 选项
PHP 5.3:添加了 options 参数