PHP json_decode() 函数
示例
将 JSON 数据存储在 PHP 变量中,然后将其解码为 PHP 对象
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
运行示例 »
定义和用法
json_decode()
函数用于解码或将 JSON 对象转换为 PHP 对象。
语法
json_decode(string, assoc, depth, options)
参数值
参数 | 描述 |
---|---|
string | 必需。指定要解码的值 |
assoc | 可选。指定一个布尔值。设置为 true 时,返回的对象将被转换为关联数组。设置为 false 时,它返回一个对象。默认为 false |
depth | 可选。指定递归深度。默认递归深度为 512 |
选项 | 可选。指定一个位掩码(JSON_BIGINT_AS_STRING, JSON_INVALID_UTF8_IGNORE, JSON_INVALID_UTF8_SUBSTITUTE, JSON_OBJECT_AS_ARRAY, JSON_THROW_ON_ERROR) |
技术详情
返回值 | 以适当的 PHP 类型返回 JSON 编码的值。如果 JSON 对象无法解码,则返回 NULL |
---|---|
PHP 版本 | 5.2+ |
PHP 更新日志 | PHP 7.3:添加了 JSON_THROWN_ON_ERROR 选项 PHP 7.2:添加了 JSON_INVALID_UTF8_IGNORE 和 JSON_INVALID_UTF8_SUBSTITUTE 选项 PHP 5.4:添加了 JSON_BIGINT_AS_STRING 和 JSON_OBJECT_AS_ARRAY 选项 PHP 5.4:添加了 options 参数 PHP 5.3:添加了 depth 参数 |
更多示例
示例
将 JSON 数据存储在 PHP 变量中,然后将其解码为 PHP 关联数组
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj, true));
运行示例 »
示例
如何访问 PHP 对象中的值
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
运行示例 »
示例
如何访问 PHP 关联数组中的值
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
运行示例 »
❮ PHP JSON 参考