【问题标题】:Looping through Curl response with php and pulling information out使用php循环遍历Curl响应并提取信息
【发布时间】:2022-01-18 12:31:43
【问题描述】:

我对编码非常陌生,正在研究 CURL 响应。我的任务是遍历结果并仅列出“ORGANISATION_NAME”。

我的努力是这样的,但显然失败了,我不知道为什么。

有人可以通过简单的解释指导我如何做到这一点吗?

foreach ($response[] as $key => $value) {
  echo $value['ORGANISATION_NAME'];
}

这是数据。

[
  {
    "ORGANISATION_ID": 59931111,
    "ORGANISATION_NAME": "Low Level Repository"
  },      {
    "ORGANISATION_ID": 59931112,
    "ORGANISATION_NAME": "The Bike Shed"
  },      {
    "ORGANISATION_ID": 59931113,
    "ORGANISATION_NAME": "Taxi's are us"
  },      {
    "ORGANISATION_ID": 59931114,
    "ORGANISATION_NAME": "The apple tree"
  }
]

【问题讨论】:

    标签: php json curl


    【解决方案1】:

    对于初学者来说,响应看起来像 JSON,所以你需要对其进行解码。

    另外我不太确定你的 foreach 循环发生了什么,试试这个:

    foreach(json_decode($response) as $item){
    
    echo $item->ORGANISATION_ID; // Returns the value for the object
    echo $item->ORGANISATION_NAME;
    
    }
    

    如果您还没有准备好对象,您可以通过将第二个参数设置为 true 来使用 json 解码返回和关联数组:

    foreach(json_decode($array, true) as $item){
    
    echo $item['ORGANISATION_ID'];
    echo $item['ORGANISATION_NAME'];
    
    }
    

    Json_decode();

    如果您打算将 PHP 数组或对象发送到 JSON:json_encode();

    PHP Arrays

    【讨论】:

    • 天啊,这是我的第一次尝试,但不知道我必须对其进行解码。非常感谢您发现这一点。所以看起来如果它是 JSON,那么它需要解码才能使用它。
    • 一些参考资料会很好,因为我将与其他有同样问题的人分享这个页面。
    • @JulieFreeman,更新完毕。是的,为了让大多数语言理解 JSON,它需要将其转换为自己的字典/对象/数组类型。反之亦然。 json_encode 将做相反的事情。将 PHP 数组更改为 Json 格式。
    • @Wakka,太好了!感谢您花时间解释。它确实有帮助。
    • @JulieFreeman,关于遍历数组、关联数组和对象。我建议您查看文档并自己进行试验以了解它。你几乎就在那里,但你试图循环一个奇异的 assoc 数组。
    猜你喜欢
    • 2016-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-25
    • 1970-01-01
    • 2021-11-12
    相关资源
    最近更新 更多