You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在PHP中如何读取下述JSON代码数据的每一个字段值

PHP解析指定JSON数据的方法

PHP内置json_decode()函数即可完成JSON解析,你可以按需选择解析为关联数组或者对象两种格式来读取字段。

完整实现步骤

1. 预处理转义内容

你给出的JSON内容里的"是HTML转义后的双引号,需要先调用html_entity_decode()还原为正常的JSON字符串后再解析。

2. 解析并读取字段代码示例

<?php
// 拿到原始转义后的JSON字符串
$rawJson = '{
    &quot;data&quot;: {
        &quot;orderId&quot;: &quot;10946506&quot;,
        &quot;status&quot;: &quot;FAILED&quot;,
        &quot;mobile&quot;: &quot;9795681183&quot;,
        &quot;amount&quot;: &quot;100.00&quot;,
        &quot;transId&quot;: &quot;&quot;,
        &quot;error_code&quot;: &quot;119&quot;,
        &quot;service&quot;: &quot;Airtel&quot;,
        &quot;bal&quot;: &quot;&quot;,
        &quot;creditUsed&quot;: &quot;0&quot;,
        &quot;resText&quot;: &quot;Ip 185.27.134.67 Not Configured&quot;,
        &quot;gstMode&quot;: &quot;P2P&quot;,
        &quot;tdsAmount&quot;: &quot;0&quot;
    }
}';

// 还原HTML转义,得到标准JSON字符串
$jsonStr = html_entity_decode($rawJson);

// 解析为关联数组(第二个参数传true,读取更便捷)
$result = json_decode($jsonStr, true);

// 读取所有字段示例
$data = $result['data'];
$orderId = $data['orderId']; // 取值为10946506
$status = $data['status']; // 取值为FAILED
$mobile = $data['mobile']; // 取值为9795681183
$amount = $data['amount']; // 取值为100.00
$transId = $data['transId']; // 取值为空
$errorCode = $data['error_code']; // 取值为119
$service = $data['service']; // 取值为Airtel
$bal = $data['bal']; // 取值为空
$creditUsed = $data['creditUsed']; // 取值为0
$resText = $data['resText']; // 取值为Ip 185.27.134.67 Not Configured
$gstMode = $data['gstMode']; // 取值为P2P
$tdsAmount = $data['tdsAmount']; // 取值为0
?>

解析错误校验建议

解析后可以通过json_last_error()判断解析是否成功,避免JSON格式错误导致后续读取报错:

if (json_last_error() !== JSON_ERROR_NONE) {
    echo "JSON解析失败:" . json_last_error_msg();
}

内容的提问来源于stack exchange,提问作者Ajay Srivastava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 03:54:02