(PECL ds >= 1.0.0)
Ds\Map::slice — Devuelve un subconjunto del mapa definido por un índice de inicio y una longitud
Devuelve un subconjunto del mapa definido por un index
de inicio y una longitud length
.
index
El índice desde el cual comienza el rango.
Si es positivo, el rango comenzará en este índice en el mapa. Si es negativo, el rango comenzará a esta distancia del final.
length
Si se da una longitud y es positiva, el mapa resultante tendrá hasta tantas parejas. Si se da una longitud y es negativa, el rango terminará a tantas parejas del final. Si la longitud provoca un desbordamiento, solo las parejas hasta el final del mapa serán incluidas. Si no se proporciona una longitud, el mapa resultante contendrá todas las parejas entre el índice y el final del mapa.
Un subconjunto del mapa definido por un índice de inicio y una longitud.
Ejemplo #1 Ejemplo de Ds\Map::slice()
<?php
$map = new \Ds\Map(["a" => 1, "b" => 2, "c" => 3, "d" => 4, "e" => 5]);
// Slice desde 2 en adelante
print_r($map->slice(2)->toArray());
// Slice desde 1, con una longitud de 3
print_r($map->slice(1, 3)->toArray());
// Slice desde 1 en adelante
print_r($map->slice(1)->toArray());
// Slice desde 2 desde el final en adelante
print_r($map->slice(-2)->toArray());
// Slice desde 1 hasta 1 desde el final
print_r($map->slice(1, -1)->toArray());
?>
El resultado del ejemplo sería algo similar a:
Array ( [c] => 3 [d] => 4 [e] => 5 ) Array ( [b] => 2 [c] => 3 [d] => 4 ) Array ( [b] => 2 [c] => 3 [d] => 4 [e] => 5 ) Array ( [d] => 4 [e] => 5 ) Array ( [b] => 2 [c] => 3 [d] => 4 )