2011-01-26 6 views
13

Tengo la matriz con claves específicas. Quiero obtener los primeros 5 elementos de matriz. Yo uso array_splice(). Todo está bien, pero las claves en la nueva matriz son 0, 1, 2, 3, 4. Y quiero mantener las teclas de matriz anteriores. Puedo hacerlo con foreach, pero estoy encontrando el método elegante.
Mi código:Parte de extraer PHP de una matriz que conserva las claves anteriores

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

Gracias de antemano. Lo siento por mi ingles.

Respuesta

9

Con array_slice, la matriz original no se modifica:

$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 
Cuestiones relacionadas