如何使用PHP从JSON响应的列表中提取特定值
完全可以通过PHP实现该需求,核心逻辑是先解析JSON为PHP数组/对象,遍历records字段提取Display值,再重新编码为JSON即可,以下是可直接复用的实现代码:
实现步骤
- 把API返回的原始JSON字符串用
json_decode()解析为PHP关联数组 - 遍历
records数组,收集所有Display字段的值到新列表 - 按需将收集到的列表直接使用,或用
json_encode()编码为JSON格式
示例代码
<?php // 填入你从API获取到的原始JSON响应字符串 $originJson = '你的原始API响应JSON内容'; // 解析JSON为关联数组,第二个参数传true指定返回数组格式 $originData = json_decode($originJson, true); $displayResult = []; // 遍历records提取Display值 foreach ($originData['records'] as $item) { // 增加字段存在判断,避免部分记录无该字段时报错 if (isset($item['Display'])) { $displayResult[] = $item['Display']; } } // 输出JSON格式的最终结果,JSON_UNESCAPED_UNICODE避免中文被转义 echo json_encode($displayResult, JSON_UNESCAPED_UNICODE); ?>
注意事项
- 如果你的原始JSON中
records字段有上层嵌套(比如外层包了data字段),只需要调整遍历的取值路径即可,例如改成$originData['data']['records'] - 如果
json_decode不传第二个参数,返回的是对象类型,取值要改成$item->Display - 如果你的API返回结构100%稳定,所有记录都存在
Display字段,可以省略isset()判断
内容的提问来源于stack exchange,提问作者whitetiger
相关产品推荐
相关产品推荐

