Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php从json中提取地址值?_Php_Arrays_Json_Extract - Fatal编程技术网

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

如何使用php从json中提取地址值?,php,arrays,json,extract,Php,Arrays,Json,Extract,我有下面的json,如何从这个字符串中获取每个地址的值并存储在逗号分隔的字符串中 Array ( [ResponseCode] => 0 [ResponseMessage] => OK [ResponseDateTime] => 5/6/2017 11:46:05 AM GMT [Data] => Array ( [0] => Array ( [Pincode] =&

我有下面的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_解码并循环数据索引

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

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

echo $address; 
或者使用这个单行数组_列获取所有地址列值,然后使用逗号将它们绑定在一起

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

希望这个简单的解决方案能帮到你。这里我们使用array_column和内爆来获得所需的输出

在下面的代码中,我们使用array_column检索数组的索引,并使用内爆连接列


你没试过什么吗?
<?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"));