Home > Backend Development > PHP Tutorial > php数据问题,请教高手!

php数据问题,请教高手!

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-23 14:24:23
Original
1042 people have browsed it

php 数组

有这样一个数组:
Array(    [0] => Array        (            [time] => 1382060855000            [day] => 2013-10-18            [latitude] => 39.9289            [longitude] => 116.3883        )    [1] => Array        (            [time] => 1382060855000            [day] => 2013-10-18            [latitude] => 42            [longitude] => 43.5        )    [2] => Array        (            [time] => 1382060855000            [day] => 2013-10-18            [latitude] => 38.9122            [longitude] => 121.6022        )    [3] => Array        (            [time] => 1382060855000            [day] => 2013-10-18            [latitude] => 40.5525            [longitude] => -74.2915        )    [4] => Array        (            [time] => 1382060855000            [day] => 2013-10-18            [latitude] => 40.5525            [longitude] => -74.2915        )    [5] => Array        (            [time] => 1382060855000            [day] => 2013-10-18            [latitude] => 38.9122            [longitude] => 121.6022        )    [6] => Array        (            [time] => 1382060855000            [day] => 2013-10-18            [latitude] => 38.9122            [longitude] => 121.6022        ))
Copy after login

里面的经纬度有重复的数据,想过滤掉重复数据,并且得到每一个相同经纬度的数量。最后得到的数组如下:


这个要怎么实现呢?


回复讨论(解决方案)

$ar = array (  0 =>   array (    'time' => '1382060855000',    'day' => '2013-10-18',    'latitude' => '39.9289',    'longitude' => '116.3883',  ),  1 =>   array (    'time' => '1382060855000',    'day' => '2013-10-18',    'latitude' => '42',    'longitude' => '43.5',  ),  2 =>   array (    'time' => '1382060855000',    'day' => '2013-10-18',    'latitude' => '38.9122',    'longitude' => '121.6022',  ),  3 =>   array (    'time' => '1382060855000',    'day' => '2013-10-18',    'latitude' => '40.5525',    'longitude' => '-74.2915',  ),  4 =>   array (    'time' => '1382060855000',    'day' => '2013-10-18',    'latitude' => '40.5525',    'longitude' => '-74.2915',  ),  5 =>   array (    'time' => '1382060855000',    'day' => '2013-10-18',    'latitude' => '38.9122',    'longitude' => '121.6022',  ),  6 =>   array (    'time' => '1382060855000',    'day' => '2013-10-18',    'latitude' => '38.9122',    'longitude' => '121.6022',  ),);$res = array();foreach($ar as $v) {  $k = $v['latitude'] . ',' . $v['longitude'];  if(isset($res[$k])) $res[$k]['count']++;  else $res[$k] = array('latitude' => $v['latitude'], 'longitude' => $v['longitude'], 'count' => 1);}print_r(array_values($res));
Copy after login

Array
(
    [0] => Array
        (
            [latitude] => 39.9289
            [longitude] => 116.3883
            [count] => 1
        )

    [1] => Array
        (
            [latitude] => 42
            [longitude] => 43.5
            [count] => 1
        )

    [2] => Array
        (
            [latitude] => 38.9122
            [longitude] => 121.6022
            [count] => 3
        )

    [3] => Array
        (
            [latitude] => 40.5525
            [longitude] => -74.2915
            [count] => 2
        )

)

贴出经var_export(); 输出后的数组出来

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template