如何使用 php 从 json 中提取地址值?

how can i extract address value from json using php?

我有以下内容 json 我如何从这个字符串中获取每个地址的值并存储在逗号分隔的字符串中

   Array
    (
   [ResponseCode] => 0
[ResponseMessage] => OK
[ResponseDateTime] => 5/6/2017 11:46:05 AM GMT
[Data] => Array
    (
        [0] => Array
            (
                [Pincode] => 400067
                [Address] => Charkop 
                [City] => Mumbai
                [State] => MAHARASHTRA
                [Country] => India
            )

        [1] => Array
            (
                [Pincode] => 400067
                [Address] => Kandivali RS 
                [City] => Mumbai
                [State] => MAHARASHTRA
                [Country] => India
            )

        [2] => Array
            (
                [Pincode] => 400067
                [Address] => Kandivali West 
                [City] => Mumbai
                [State] => MAHARASHTRA
                [Country] => India
            )

    )

   )

请帮助我从 json 中提取地址字段并将其存储在以逗号分隔的字符串中。输出应该像 $address = "Charkop,Kandivali RS,Kandivali West ";

将其存储在一个数组中,并通过 foreach 循环绑定字符串。

$string = '';
foreach($response['Data'] as $data){
  $string .= implode(',',$data['State']);
}
echo $string;

使用json_decode并循环数据索引

$new_arr= json_decode($response_json,true);
$address= '';

foreach($new_arr['Data'] as $add){
    $address.= $add['Address'].",";
}

echo $address; 

或使用这一行 array_column() 获取所有地址列值,然后使用逗号将它们绑定在一起。

$address = implode(",",array_column($new_arr["Data"], "Address"));
echo $address;

希望这个简单的解决方案能帮到您。这里我们使用 array_columnimplode 来获得所需的输出。

在下面的代码中,我们使用 array_column 检索数组索引,并使用 implode.

将列与 , 连接起来

Try this code snippet here

<?php

$string='{"ResponseCode":"0","ResponseMessage":"OK","ResponseDateTime":"5/6/2017 11:46:05 AM GMT","Data": {"0": {"Pincode":"400067","Address":"Charkop ","City":"Mumbai","State":"MAHARASHTRA","Country":"India"},"1": {"Pincode":"400067","Address":"Kandivali RS ","City":"Mumbai","State":"MAHARASHTRA","Country":"India"},"2": {"Pincode":"400067","Address":"Kandivali West ","City":"Mumbai","State":"MAHARASHTRA","Country":"India"}}}';

$array=json_decode($string,true);
echo implode(",",array_column($array["Data"], "Address"));