将 JSON 数据存储在 PHP 变量中,然后将其解码为 PHP 对象:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
?>
运行示例 »
json_decode() 函数用于将 JSON 对象解码或转换为 PHP 对象。
json_decode(
string, assoc, depth, options)
Parameter | Description |
---|---|
string | Required. Specifies the value to be decoded |
assoc | Optional. Specifies a Boolean value. When set to true, the returned object will be converted into an associative array. When set to false, it returns an object. False is default |
depth | Optional. Specifies the recursion depth. Default recursion depth is 512 |
options | Optional. Specifies a bitmask (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:添加选项范围 PHP 5.3:添加深度范围 |
将 JSON 数据存储在 PHP 变量中,然后将其解码为 PHP 关联数组:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj, true));
?>
运行示例 »
如何从 PHP 对象访问值:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
?>
运行示例 »
如何访问 PHP 关联数组中的值:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>
运行示例 »
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!