PHP如何打印JSON数据中指定键对应的值 附代码与JSON结构示例
PHP打印输出JSON数据指定键对应内容的实现方案
完整可运行代码
<?php session_start(); include "smsciniz/vendor/autoload.php"; include "smsciniz/baglan.php"; $ulke = $DB->query("SELECT * FROM sc_ulke"); foreach ($ulke as $value) { $url = file_get_contents("https://5sim.net/v1/guest/products/".trim($value["ulke_isim"])."/any"); $json = json_decode($url, true); // 判断32red键是否存在,避免不存在时报错 if (isset($json['32red'])) { // 方案1:调试用,直接打印数组结构 print_r($json['32red']); // 方案2:输出格式化的JSON格式,和你需要的展示效果一致 // echo json_encode(['32red' => $json['32red']], JSON_PRETTY_PRINT); } } ?>
代码说明
- 调用
json_decode($url, true)后返回的是关联数组,直接通过$json['键名']就能拿到对应键的内容 - 新增
isset()判断是为了兼容接口返回数据中没有32red键的场景,避免PHP抛出notice级错误 - 两种输出方式按需使用:
- 开发调试阶段用
print_r()可以直接看到数组的全部字段内容 - 要输出和你示例一致的JSON格式,就使用带
JSON_PRETTY_PRINT参数的json_encode()方法,输出内容会自动格式化换行
- 开发调试阶段用
- 原代码中直接
echo $json是错误写法,$json是数组类型,无法直接通过echo输出
内容的提问来源于stack exchange,提问作者cano can can
相关产品推荐
相关产品推荐

