簡體   English   中英

如何訪問JSON元素

[英]How to Access JSON Element

我有一個json,我想從該json打印“ formatted_address”元素

傑森

{
   "html_attributions" : [],
   "results" : [
      {
         "formatted_address" : "Narayan Peth, Pune, Maharashtra 411030, India",
         "geometry" : {
            "location" : {
               "lat" : 18.515797,
               "lng" : 73.852335
            }
         },
         "icon" : "https://maps.gstatic.com/mapfiles/place_api/icons/shopping-71.png",
         "id" : "3a25975b3806df28aa79ac4a8d954c307be4aa57",
         "name" : "Aditya Medical",
         "place_id" : "ChIJJxwmOHDAwjsRjRDO4LnGJ-I",
         "reference" : "CmRSAAAA3E7ih55-2BZjRQcw_URQ2gwi8eWb5HU6hdfNUj_TqtDJ7TtASVMowcuWMkohNjp7F6UKuGsMuR-IlzZEt4YUJyzNxzWg-TYy6hyN8P5n2asAO6ztZeU3oHZdH7OBFFW_EhBe4cQbAU99oILcDmvv_gOhGhR7jzP0Z9-mDrncd5Gr9hOY7aOqRg",
         "types" : [ "pharmacy", "health", "store", "point_of_interest", "establishment" ]
      }
   ],
   "status" : "OK"
}

我厭倦了使用來打印,但是無法打印。

foreach (json_decode($address[0]->Response) as $obj){
     print_r($obj['results']['formatted_address']);
}

您需要將第二個參數設置為true才能將json作為數組。 另外您的formatted_address是agin inarray,因此需要在其中傳遞索引

foreach (json_decode($address[0]->Response, true) as $obj){
     print_r($obj['results'][0]['formatted_address']);
}

演示

那可以是一個解決方案:

$jsonAsArray = json_decode($yourJson, true);
$results = $array["results"][0];

var_dump($results['formatted_address']);

祝好運

嘗試

foreach (json_decode($address[0]->Response, true) as $obj){
     print_r($obj['results']['formatted_address']);
}

json_decode具有第二個參數,用於確定返回的結果格式- objectarray

我嘗試像@Plamen Nikolov一樣,但不起作用。 然后我嘗試將“ True”更改為1,就可以了!

foreach (json_decode($address[0]->Response, 1) as $obj){
     print_r($obj['results']['formatted_address']);
}

嘗試

foreach (json_decode($address[0]->Response)->results as $obj){
     print_r($obj->formatted_address);
}

json_decode($ address [0]-> Response)將為您提供一個對象。 您不應該使用like數組。 因此,您應該使用“->”而不是數組形式。 更好的是,您可以將結果放在foreach上,並從該$ obj獲取formatted_address的數據

-

暫無
暫無

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

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