如何从这个多维数组中提取唯一值?

时间:2015-08-03 14:50:24

标签: php multidimensional-array array-unique

如何从此数组中提取唯一值。 我已经尝试了另一个建议......

$input = array_map("unserialize", array_unique(array_map("serialize", $input)));  

然而,由于unix时间戳,它无法工作。

我希望只提取第二个数组索引唯一值及其数组,所以应该留下..

// expected final 
array(
2 => array(...),
3 => array(..)
)



$arr = array (
 0 => 
    array (
     2 => 
       array (
        'date' => 1438173658,
        'user' => 'admin',
     ),
    ),
 1 => 
   array (
      2 => 
       array (
        'date' => 1438007944,
        'user' => 'admin',
    ),
   ),
 2 => 
    array (
        3 => 
          array (
       'date' => 1437746969,
       'user' => 'supes',
      ),
 )
)

感谢。

1 个答案:

答案 0 :(得分:0)

可能是一种更简单的方式,但这里有一个:

$result = array_intersect_key($arr,
                              array_unique(array_map(function($v) {
                                                         return current($v)['user'];
                                                     },
                                                     $arr)));