2011-01-26 8 views
13

Ho la matrice con chiavi specifiche. Voglio ottenere i primi 5 elementi dell'array. Io uso array_splice(). Tutto OK, ma le chiavi nel nuovo array sono 0, 1, 2, 3, 4. E voglio mantenere le chiavi dell'array precedente. Posso farlo con foreach, ma sto trovando il metodo elegante.
Il mio codice:PHP estrae la parte dall'array mantenendo le chiavi precedenti

$levels = array('a' => 1, 'b' =>2, 'c' => 3, 'd' => 4, 'f' => 5, 'g' => 6); 
$levels = array_splice($levels, 5); 

Grazie in anticipo. Mi scusi per il mio inglese.

risposta

9

Con array_slice, la matrice originale non viene modificato:

$levels = array('a' => 1, 'b' =>2, 'c' => 3, 'd' => 4, 'f' => 5, 'g' => 6); 
$firstLevels = array_slice($levels, 0, 5, true); 
// count($levels) is 6, count($firstLevels) 5 
Problemi correlati