2015-08-03 2 views
0

Comment extraire des valeurs uniques de ce tableau. J'ai essayé une autre suggestion ...Comment extraire des valeurs uniques de ce tableau multidimensionnel?

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

Cependant, en raison de l'horodatage unix it ne fonctionnera pas.

Je cherche à extraire uniquement le second indice de tableau la valeur unique et son ensemble devrait donc être laissé ..

// 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', 
    ), 
) 
) 

Merci.

+0

Quelle est la sortie de courant et ce qui est le résultat attendu? – Rizier123

+0

le résultat attendu est le '// final' que j'ai affiché dans la question – succeed

+0

Qu'est-ce qui rend alors unique? Juste un 'user' unique? – AbraCadaver

Répondre

0

est peut-être une façon plus simple, mais en voici un:

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

Brilliant! Merci – succeed