array_splice

(PHP 4, PHP 5, PHP 7)

array_spliceElimina una porción del array y la reemplaza con otra cosa

Descripción

array_splice ( array &$input , int $offset [, int $length = 0 [, mixed $replacement = array() ]] ) : array

Elimina los elementos designados por offset y length del array input, y los reemplaza con los elementos del array replacement, si se proporcionan.

Observe que las claves numéricas de input no se preservan.

Nota: Si replacement no es un array, será moldeado a uno (esto es, (array) $replacement). Esto puede resultar en un comportamiento inesperado cuando se usa un objeto o replacement NULL

Parámetros

input

El array de entrada.

offset

Si el índice dado por offset es positivo, el inicio de la porción eliminada estará en ese índice desde el principio del array input. Si offset es negativo, se comienza desde el final del array input.

length

Si se omite la longitud dada por length, se elimina todo desde offset hasta el final del array. Si se especifica length y es positivo, se eliminarán tantos elementos como indique la longitud. Si se especifica length y es negativo, el final de la porción eliminada será de tantos elementos como indique la longitud desde el final del array. Si se especifica length y es cero, no se eliminará ningún elemento. Consejo: para eliminar todo desde offset hasta el final del array cuando también se especifique replacement, use count($input) para length.

replacement

Si se especifica el array replacement, los elementos eliminados serán reemplazados con los elementos de este array.

Si offset y length son tales que no se elimina nada, los elementos del array replacement serán insertados en el lugar especificado por offset. Observe que las claves del array replacement no se preservan.

Si replacement es sólo un elemento, no es necesario poner array() alrededor de él, a menos que el elemento sea un array, un objeto o NULL.

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($entrada2);
// $entrada ahora es array("rojo", "verde")

$entrada = array("rojo""verde""azul""amarillo");
array_splice($entrada1, -1);
// $entrada ahora es array("rojo", "amarillo")

$entrada = array("rojo""verde""azul""amarillo");
array_splice($entrada1count($entrada), "naranja");
// $entrada ahora es array("rojo", "naranja")

$entrada = array("rojo""verde""azul""amarillo");
array_splice($entrada, -11, array("negro""granate"));
// $entrada ahora es array("rojo", "verde",
//          "azul", "negro", "granate")

$entrada = array("rojo""verde""azul""amarillo");
array_splice($entrada30"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($entradacount($entrada), 0, array($x$y));
array_pop($entrada);
array_splice($entrada, -1);
array_shift($entrada);
array_splice($entrada01);
array_unshift($entrada$x$y);
array_splice($entrada00, array($x$y));
$entrada[$x] = $y// para arrays donde la clave es igual al índice
array_splice($entrada$x1$y);
?>

Ver también