从php中删除重复的密钥数组

从php中删除重复的密钥数组,php,arrays,oop,Php,Arrays,Oop,如何删除具有重复距离值的数组 Array([0] => Array([distance] => 66.68 [lat] => 51.8560591 [long] => -2.2170209 [ordNum] => 1/5938ebf2475fa )) Array([0] => Array([distance] => 66.68 [lat] => 51.8560591 [long] => -2.2170209 [ordNum] => 1/

如何删除具有重复距离值的数组

Array([0] => Array([distance] => 66.68 [lat] => 51.8560591 [long] => -2.2170209 [ordNum] => 1/5938ebf2475fa ))
Array([0] => Array([distance] => 66.68 [lat] => 51.8560591 [long] => -2.2170209 [ordNum] => 1/5938e93c2080e ))
Array([0] => Array([distance] => 123.93 [lat] => 51.8560591 [long] => -2.2170209 [ordNum] => 1/5938ebf2475fa))
Array([0] => Array([distance] => 123.93 [lat] => 51.8560591 [long] => -2.2170209 [ordNum] => 1/5938e93c2080e))
Array([0] => Array([distance] => 128.84 [lat] => 52.6301043 [long] => -2.4940598 [ordNum] => 1/5938e979bdb8b))
Array([0] => Array([distance] => 148.43 [lat] => 52.6301043 [long] => -2.4940598 [ordNum] => 1/5938e979bdb8b))

尝试使用以下PHP本机函数:

数组相交键($v1,$v2) 通过附加索引检查计算数组的交集,通过回调函数比较数据


结果: 阵列([distance]=>66.68[lat]=>51.8560591[long]=>2.2170209[ordNum]=>1/5938ebf2475fa)


首先,您必须创建多维数组而不是差分数组

**Do as mentioned as below.**
$data = "Array
(
    [0] => Array
        (
            [distance] => 66.68
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938ebf2475fa
        )

    [1] => Array
        (
            [distance] => 66.68
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938e93c2080e
        )

    [2] => Array
        (
            [distance] => 123.93
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938ebf2475fa
        )

    [3] => Array
        (
            [distance] => 123.93
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938e93c2080e
        )

)";
echo '<pre/>';
$data1 = array( array('distance' => '123.93','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938e93c2080e'),
                array('distance' => '123.93','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938ebf2475fa'),
                array('distance' => '66.68','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938e93c2080e'),
                array('distance' => '66.68','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938ebf2475fa'));
$newArr = array();
foreach ($data1 as $val) {
    $newArr[$val['distance']] = $val;    
}
$array = array_values($newArr);
print_r($array);
**按如下所述操作**
$data=“数组
(
[0]=>阵列
(
[距离]=>66.68
[lat]=>51.8560591
[长]=>-2.2170209
[ordNum]=>1/5938ebf2475fa
)
[1] =>阵列
(
[距离]=>66.68
[lat]=>51.8560591
[长]=>-2.2170209
[ordNum]=>1/5938e93c2080e
)
[2] =>阵列
(
[距离]=>123.93
[lat]=>51.8560591
[长]=>-2.2170209
[ordNum]=>1/5938ebf2475fa
)
[3] =>阵列
(
[距离]=>123.93
[lat]=>51.8560591
[长]=>-2.2170209
[ordNum]=>1/5938e93c2080e
)
)";
回声';
$data1=数组(数组('distance'=>'123.93','lat'=>'51.8560591','long'=>'-2.2170209','ordNum'=>'1/5938e93c2080e'),
数组('distance'=>'123.93','lat'=>'51.8560591','long'=>'-2.2170209','ordNum'=>'1/5938ebf2475fa'),
数组('distance'=>'66.68','lat'=>'51.8560591','long'=>'-2.2170209','ordNum'=>'1/5938e93c2080e'),
数组('distance'=>'66.68','lat'=>'51.8560591','long'=>'-2.2170209','ordNum'=>'1/5938ebf2475fa');
$newArr=array();
foreach($data1作为$val){
$newArr[$val['distance']]=$val;
}
$array=array_值($newArr);
打印(数组);
**Do as mentioned as below.**
$data = "Array
(
    [0] => Array
        (
            [distance] => 66.68
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938ebf2475fa
        )

    [1] => Array
        (
            [distance] => 66.68
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938e93c2080e
        )

    [2] => Array
        (
            [distance] => 123.93
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938ebf2475fa
        )

    [3] => Array
        (
            [distance] => 123.93
            [lat] => 51.8560591
            [long] => -2.2170209
            [ordNum] => 1/5938e93c2080e
        )

)";
echo '<pre/>';
$data1 = array( array('distance' => '123.93','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938e93c2080e'),
                array('distance' => '123.93','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938ebf2475fa'),
                array('distance' => '66.68','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938e93c2080e'),
                array('distance' => '66.68','lat' => '51.8560591','long' => '-2.2170209','ordNum' => '1/5938ebf2475fa'));
$newArr = array();
foreach ($data1 as $val) {
    $newArr[$val['distance']] = $val;    
}
$array = array_values($newArr);
print_r($array);