Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.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 将多个经度和纬度的字符串转换为2个数组(一个用于经度,一个用于纬度)_Php_Arrays_Latitude Longitude - Fatal编程技术网

Php 将多个经度和纬度的字符串转换为2个数组(一个用于经度,一个用于纬度)

Php 将多个经度和纬度的字符串转换为2个数组(一个用于经度,一个用于纬度),php,arrays,latitude-longitude,Php,Arrays,Latitude Longitude,我将传递如下多边形的经度和纬度值字符串 [ [ 51.11041991029261, -2.274169921875 ], [ 51.08282186160978, -3.460693359375 ], [ 50.443513052458044, -3.570556640625 ], [ 50.443513052458044, -1.966552734375 ] ] 我需要把这个字符串转换成两个数组。1仅使用经度值(位于[]左边的值)和纬度数组(位于[]右边的值)-或者以任何方式,我总是将它们

我将传递如下多边形的经度和纬度值字符串

[ [ 51.11041991029261, -2.274169921875 ], [ 51.08282186160978, -3.460693359375 ], [ 50.443513052458044, -3.570556640625 ], [ 50.443513052458044, -1.966552734375 ] ]
我需要把这个字符串转换成两个数组。1仅使用经度值(位于[]左边的值)和纬度数组(位于[]右边的值)-或者以任何方式,我总是将它们混淆


我已经使用过explode和其他几个PHP函数,但是我没有运气看到它看起来像JSON,所以

$json = <<<JSON
[ [ 51.11041991029261, -2.274169921875 ], [ 51.08282186160978, -3.460693359375 ], [ 50.443513052458044, -3.570556640625 ], [ 50.443513052458044, -1.966552734375 ] ]
JSON;

$coords = json_decode($json, true);
$lats   = array_map(function (array $coord) { return $coord[0]; }, $coords);
$lons   = array_map(function (array $coord) { return $coord[1]; }, $coords);

很抱歉,在上一页的表单中传递时没有注意到。工作完美,感谢您的快速响应!
$lats = array_column($coords, 0);
$lons = array_column($coords, 1);