【问题标题】:how can i extract address value from json using php?如何使用 php 从 json 中提取地址值?
【发布时间】:2017-05-06 12:08:40
【问题描述】:

我有以下 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";

【问题讨论】:

  • 你没试过吗?

标签: php arrays json extract


【解决方案1】:

使用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;

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

      希望这个简单的解决方案能帮到您。这里我们使用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"));
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-03-16
        • 2014-04-27
        • 1970-01-01
        • 2018-04-24
        • 2018-06-23
        • 2011-06-02
        • 1970-01-01
        • 2014-08-29
        相关资源
        最近更新 更多