array_slice
(PHP 4, PHP 5)
array_slice — Extrae una parte de un array
Descripción
$array
, int $offset
[, int $length = NULL
[, bool $preserve_keys = false
]] )
array_slice() devuelve la secuencia de elementos
del array array tal y como se especifica en
los parámetros offset y
length.
Parámetros
-
array -
El array de entrada.
-
offset -
Si el índice dado por
offsetno es negativo, la secuencia empezará en esa posición delarray. Si eloffsetes negativo, la secuencia empezará en esa posición empezando por el final delarray. -
length -
Si la longitud dada por
lengthes positiva, la secuencia tendrá hasta tantos elementos como indique el valor. Si el array es más corto quelength, solamente estarán presentes los elementos disponibles del array. Si se proporcionalengthy es negativo, la secuencia finalizará en tantos elementos empezando por el final del array. Si se omite, entonces la secuencia contendrá todo el contenido desdeoffsethasta el final delarray. -
preserve_keys -
Observe que array_slice() reordenará y reinicializará los índices numéricos del array de forma predeterminada. Se puede cambiar esta comportamiento estableciendo el parámetro
preserve_keysaTRUE.
Valores devueltos
Devuelve la parte del array.
Historial de cambios
| Versión | Descripción |
|---|---|
| 5.2.4 |
El valor predeterminado del parámetro length se cambió a NULL. Una length NULL ahora indica a la función que use la longitud de array. Antes de esta versión, una length NULL se tomaba como de longitud cero (no se devolvía nada).
|
| 5.0.2 |
Se añadió el parámetro opcional preserve_keys.
|
Ejemplos
Ejemplo #1 Ejemplos de array_slice()
<?php
$entrada = array("a", "b", "c", "d", "e");
$salida = array_slice($entrada, 2); // devuelve "c", "d", y "e"
$salida = array_slice($entrada, -2, 1); // devuelve "d"
$salida = array_slice($entrada, 0, 3); // devuelve "a", "b", y "c"
// observe las diferencias en las claves de los arrays
print_r(array_slice($entrada, 2, -1));
print_r(array_slice($entrada, 2, -1, true));
?>
El resultado del ejemplo sería:
Array
(
[0] => c
[1] => d
)
Array
(
[2] => c
[3] => d
)
Ver también
- array_splice() - Elimina una porción del array y la reemplaza con algo
- unset() - Destruye una variable especificada
- array_chunk() - Divide un array en fragmentos