簡體   English   中英

如何使用php解析此json

[英]How to parse this json with php

我對json完全陌生。

我需要解析一個返回如下結果的json:

"response":{
    "status":1,
    "data":{
      "16":{
        "Offer":{
          "id":"16",
          "advertiser_id":null,
          "name":"My Offer",
          "description":null,
          "require_approval":"0",
          "require_terms_and_conditions":0,
          "terms_and_conditions":null,
          "offer_url":"http://",
          "preview_url":"http://",
        }
      },
      "17":{
        "Offer":{
          "id":"17",
          "advertiser_id":null,
          "name":"My Other Offer",
          "description":null,
          "require_approval":"0",
          "require_terms_and_conditions":0,
          "terms_and_conditions":null,
          "offer_url":"http://",
          "preview_url":"http://",
        }
      },
    },
    "errors":[]
  }

我需要訪問所有商品名稱,但是無法嘗試以下操作:

$url = "jsonurl";

$string = file_get_contents($url);
$json_a=json_decode($string,true);

foreach ($json_a['data']['offer'] as $offer_a) {
  echo  $offer_a[name];
}

我做錯了什么?

謝謝大家。

您似乎跳過了16 但這很容易通過調試來調試。

echo '<pre>';
print_r($json_a);
die();

這將在數​​組/對象中顯示樹。 在這種情況下,數組。

但是我想這會起作用:

foreach ($json_a['response']['data']['16']['Offer'] as $offer_a) {
  echo  $offer_a['name'];
}

如果您需要所有商品名稱:

foreach ($json_a['response']['data'] as $offer){
    echo $offer['Offer']['name'];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM