php - php JSON解析问题

标签 php json parsing

我有这个 json 响应

 {"success":true,"results":[{"response":["random1"],"id":"6566","Limit":1},{"response":["random2"],"id":"6563","Limit":1},{"response":["random3"],"id":"6568","Limit":1}]}

我需要的只是从响应中提取 random1,random2,random,3,所以最终结果将是:

  • 随机1
  • 随机2
  • 随机3

我有这个脚本

$jsonData = file_get_contents("json");

$json = json_decode($jsonData,true); 

foreach($json["results"][0]["response"] as $data) {
 {
   echo json_encode($data);

}
}

但这只会提取

  • 随机1

如果我更改 [1] 中的 [0] 将提取 random2 和 [2] random3 如何立即获得 random1,random2,random3, 响应?所以最终的 echo 将是:

  • 随机1
  • 随机2
  • 随机3

预先感谢您,如有任何帮助,我们将不胜感激!

最佳答案

循环查看您的$json['result']你所做的只是取第一个索引 0其中有random1作为其 response

$json = '{"success":true,"results":[{"response":["random1"],"id":"6566","Limit":1},{"response":["random2"],"id":"6563","Limit":1},{"response":["random3"],"id":"6568","Limit":1}]}';
$json = json_decode($json,true); 

foreach($json["results"] as $data) {
   echo $data['response'][0]."\n";
}

尝试一下 here


更新

如果你想过滤,比如说random1然后这样做

$json = json_decode($json,true); 
$filter = array("random1"); //You can add items to filter
$result = array();
foreach($json["results"] as $data) {
   if(!in_array($data['response'][0],$filter))
       $result[] = $data;
}
print_r($result);

$result将仅包含 random2 & random3

关于php - php JSON解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35647129/

相关文章:

javascript - JSON:如何解析属性名称

javascript - "error"或 "fail"用于 jQuery 中的 $.post Ajax 调用

ios - 创建 iOS 客户端服务器应用程序。 ASIFormDataRequest 问题

c - Ping 服务器并检查 C 程序的结果?

php - 在多个设备上发送推送通知

php://输入 <> $_POST?

c# - 在 C# 中解析字符串中的查询字符串的最佳方法

parsing - 如何使用 Haskell 解析器解析任意列表?

php - 如何在 mySQL 数据库中将 "int"更改为 "varchar"而 php 代码没有问题?

javascript - 可以将 Wordpress 插件转换为在非 WP 网站上使用吗?