array_splice

array_splice

(PHP 4, PHP 5)

array_splice --  Suprime una porci贸n de la matriz y la sustituye por otra cosa

Descripci贸n

array array_splice ( array &entrada, int desplazamiento [, int tamano [, array sustitucion]] )

array_splice() suprime los elementos designados por el desplazamiento y el tamano de la matriz entrada, y los sustituye con los elementos de la matriz de sustitucion si se especifica.

Si el desplazamiento es positivo, el comienzo de la parte suprimida ser铆a en esa posici贸n desde el comienzo de la matriz de entrada. Si el desplazamiento es negativo, se cuenta la posici贸n desde el final de la matriz de entrada.

Si se omite tamano, se suprime todo desde el desplazamiento hasta el final de la matriz. Si se especifica el tamano y es positivo, se suprimir谩n tantos elementos como se especifica. Si fuera negativo, el final de la porci贸n eliminada estar谩 a tantos elementos del final de la matriz. Truco: para eliminar todo desde el desplazamiento hasta el final de la matriz cuando tambi茅n se especifica sustitucion, utilice count($entrada) como tamano.

Si se especifica la matriz de sustitucion, entonces los elementos suprimidos son reemplazados con los elementos de dicha matriz. Si los valores de desplazamiento y tamano son tales que nada es borrado, los elementos de la matriz sustitucion se insertar谩n en la posici贸n indicada por el desplazamiento. Note que los 铆ndices en la matriz que se remplaza no ser谩n conservados. Si el par谩metro sustitucion es de s贸lo un elemento no es necesario poner array().

Las siguientes funciones son equivalentes: Las sentencias siguientes cambian los valores de $entrada en la misma forma:

Tabla 1. Equivalencias array_splice()

array_push($input, $x, $y) array_splice($input, count($input), 0, array($x, $y))
array_pop($input) array_splice($input, -1)
array_shift($input) array_splice($input, 0, 1)
array_unshift($input, $x, $y) array_splice($input, 0, 0, array($x, $y))
$input[$x] = $y // Para matrices donde el 铆ndice equivale a la posici贸n array_splice($input, $x, 1, $y)

Devuelve una matriz que tiene los elementos eliminados

Ejemplo 1. Ejemplos de array_splice()

<?php
$entrada
= array("rojo", "verde", "azul", "amarillo");

array_splice($entrada, 2);      // $entrada vale ahora array("rojo", "verde")
array_splice($entrada, 1, -1);  // $entrada vale ahora array("rojo", "amarillo")
array_splice($entrada, 1, count($entrada), "naranja");  
                              
// $entrada vale ahora array("rojo", "naranja")
array_splice($entrada, -1, 1, array("negro", "marr&oacute;n"));
                              
// $entrada vale ahora array("rojo", "verde",
                              //          "azul", "negro", "marr&oacute;n")
?>

Vea tambi茅n: array_slice(), unset(), array_merge().