PHP json_decode() 函数
示例
将 JSON 数据存储在 PHP 变量中,然后将其解码为 PHP 对象
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
运行示例 »
定义和用法
The json_decode()
function is used to decode or convert a JSON object to a PHP object.
语法
json_decode(string, assoc, depth, options)
参数值
参数 | 描述 |
---|---|
string | 必需。指定要解码的值 |
assoc | 可选。指定一个布尔值。当设置为 true 时,返回的对象将被转换为关联数组。设置为 false 时,它返回一个对象。默认情况下为 false |
depth | 可选。指定递归深度。默认递归深度为 512 |
options | 可选。指定位掩码 (JSON_BIGINT_AS_STRING, JSON_INVALID_UTF8_IGNORE, JSON_INVALID_UTF8_SUBSTITUTE, JSON_OBJECT_AS_ARRAY, JSON_THROW_ON_ERROR) |
技术细节
返回值 | 返回以 JSON 编码的值,以适当的 PHP 类型表示。如果 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 参考