解析数组中的JSON数据

时间:2014-06-29 20:46:46

标签: php json

我有以下JSON并试图用这个foreach解析它。我只得到了-104.21。我需要输出为37.72,-104.21

"start_latlng":[
  37.72,
  -104.21
],

PHP循环遍历“start_latlng”数组:当我echo $ stLatLng时我只得到-104.21

foreach($stData['start_latlng'] as $latlng) {
   $stLatLng = $latlng;
}

1 个答案:

答案 0 :(得分:1)

从您获得-104.21的事实开始,我认为您已经将JSON解码为PHP格式。

您只获得该值的原因是因为它是数组中的最后一个值,并且您在迭代时为数组的每个值分配$stLatLng,所以变量每次都会被覆盖,参见例子:

foreach($stData['start_latlng'] as $latlng) {
   $stLatLng = $latlng; // first time it's 37.72, second time it's -104.21
}

Here's a demo该循环中发生的事情。


要获得两个值,您不需要循环它。您只需使用list()即可获得两个值(example)

list($lat, $lng) = $stData['start_latlng'];
// $lat = 37.72, $lng = -104.21