array_splice
(PHP 4, PHP 5)
array_splice — Elimina una porción del array y la reemplaza con algo
Descripción
Elimina los elementos designados por offset y
length del array input,
y los reemplaza con los elementos del
aray replacement array, si se proporcionan.
Observe que las clave numéricas de input no se preservan.
Nota: Si
replacementno es un array, será convertido a uno (esto es,(array) $parámetro). Esto puede resultar en un comportamiento inesperado cuando se usa unreplacementobjeto oNULL
Parámetros
-
input -
El array de entrada.
-
offset -
Si
offsetes positivo, el inicio de la porción eliminada estará en ese índice desde el principio del arrayinput. Sioffsetes negativo, se comienza desde el final del arrayinput. -
length -
Si se omite
length, se elimina todo desdeoffsethasta el final del array. Silengthse especifica y es positivo, se eliminarán tantos elementos como contenga el valor de length. Silengthse especifica y es negativo, el final de la porción eliminada será de tantos elementos como contenga length desde el final del array. Consejo: para eliminar todo desdeoffsethasta el final del array cuandoreplacementtambién se especifique, use count($input) paralength. -
replacement -
Si se especifica el array
replacement, los elementos eliminados serán reemplazados con los elementos de este array.Si
offsetylengthson tales que nada se elimina, entonces los elementos del arrayreplacementserán insertados en el lugar especificado poroffset. Observe que las claves del array replacement no se preservan.Si
replacementes sólo un elemento, no es necesario poner array() alrededor de él, a menos que el elemento sea un array, un objeto oNULL.
Valores devueltos
Devuelve un array que consiste en los elementos extraídos.
Ejemplos
Ejemplo #1 Ejemplos de array_splice()
<?php
$entrada = array("rojo", "verde", "azul", "amarillo");
array_splice($entrada, 2);
// $entrada ahora es array("rojo", "verde")
$entrada = array("rojo", "verde", "azul", "amarillo");
array_splice($entrada, 1, -1);
// $entrada ahora es array("rojo", "amarillo")
$entrada = array("rojo", "verde", "azul", "amarillo");
array_splice($entrada, 1, count($entrada), "naranja");
// $entrada ahora es array("rojo", "naranja")
$entrada = array("rojo", "verde", "azul", "amarillo");
array_splice($entrada, -1, 1, array("negro", "granate"));
// $entrada ahora es array("rojo", "verde",
// "azul", "negro", "granate")
$entrada = array("rojo", "verde", "azul", "amarillo");
array_splice($entrada, 3, 0, "púpura");
// $entrada ahora es array("rojo", "verde",
// "azul", "púpura", "amarillo");
?>
Ejemplo #2 Ejemplos de array_splice()
Las siguientes sentencias cambian el valor de $entrada de la misma manera:
<?php
array_push($entrada, $x, $y);
array_splice($entrada, count($entrada), 0, array($x, $y));
array_pop($entrada);
array_splice($entrada, -1);
array_shift($entrada);
array_splice($entrada, 0, 1);
array_unshift($entrada, $x, $y);
array_splice($entrada, 0, 0, array($x, $y));
$entrada[$x] = $y; // para arrays donde la clave es igual al índice
array_splice($entrada, $x, 1, $y);
?>
Ver también
- array_slice() - Extrae una parte de un array
- unset() - Destruye una variable especificada
- array_merge() - Combina dos o más arrays
