2010-12-29 12 views
5

Ho il seguente array:Ottenere coppia chiave-valore specifico array multidimensionale

array(2) { 
    [0] => array(3) { 
    ["submission_id"] => int(28) 
    ["date"] => string(22) "2010-10-18 15:55:33+02" 
    ["user_id"] => int(12) 
    } 
    [1] => array(3) { 
    ["submission_id"] => int(37) 
    ["date"] => string(22) "2010-11-21 16:02:07+01" 
    ["user_id"] => int(23) 
    } 

voglio ottenere solo i valori chiave user_id da questo array. Ovviamente potrei ricollegarlo, ma mi chiedevo se ci fosse un modo più rapido.

+1

Probabilmente no ... – BoltClock

risposta

-3

È possibile accedere solo i valori user_id come questo se si conosce l'indice di matrice si desidera accedere:

$arr = your array here.. 
echo $arr[0]['user_id']; 
echo $arr[1]['user_id']; 
+0

Questo metodo non sarebbe scalabile in quanto non è in grado di conoscere gli elementi totali – jimy

17

si potrebbe usare array_map (non potrebbe essere più veloce anche se, come si farà una chiamata di funzione per elemento array):

function getUserId($a) { 
    return $a['user_id']; 
} 

$user_ids = array_map('getUserId', $array); 

Oltre a questo, il ciclo è l'unico modo (array_map rende ciclo comunque).

+4

Thx! La mia proposta (PHP> 5.3): '$ user_ids = array_map (function ($ row) { \t return $ row ['user_id']; }, $ array);' – mgutt