array_splice
(PHP 4, PHP 5)
array_splice — Remove uma parcela do array e substitui com outros elementos
Descrição
Remove a sequência de elementos especificados por offset e
length do array input,
e os substitui com os elementos do array replacement,
se for especificado.
Note que as chaves numéricas em input não são preservadas.
Note: Se
replacementnão é um array, ele terá o tipo convertido para um array (i.e.(array) $parameter). Isto pode resultar em um comportamento inesperado quando usando um objeto emreplacement.
Parâmetros
-
input -
O array de entrada.
-
offset -
Se
offsetfor positivo então o começo da região a ser removida será nessa posição a partir do início do arrayinput. Seoffsetfor negativo então o ínicio será dessa distância do final deinput. -
length -
Se
lengthfor omitido, todos os elementos a partir deoffsetaté o final do array serão removidos. Selengthfor especificado e positivo, então essa quantidade de elementos será removida. Selengthfor especificado e negativo então o final da região a ser removida será dessa quantidade de elementos a partir do final do array. Dica: para remover todos elementos a partir deoffsetaté o final do array quandoreplacementtambém é especificado, use count($input) para o argumentolength. -
replacement -
Se o array
replacementfor especificado, então os elementos removidos serão substituidos pelo elementos desse array.If
offsetandlengthare such that nothing is removed, then the elements from thereplacementarray are inserted in the place specified by theoffset. Note that keys in replacement array are not preserved.Se
replacementfor de apenas um elemento então não será necessário colocar array() para ele, a não ser que elementos seja um array.
Valor Retornado
Retorna o array consistindo de elementos extraídos.
Exemplos
Example #1 Exemplos da array_splice()
<?php
$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 2);
// $input será agora array("vermelho", "verde")
$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 1, -1);
// $input será agora array("vermelho", "amarelo")
$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 1, count($input), "laranja");
// $input será agora array("vermelho", "laranja")
$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, -1, 1, array("preto", "marrom"));
// $input será agora array("vermelho", "verde", "azul", "preto", "marrom")
$input = array("vermelho", "verde", "azul", "amarelo");
array_splice($input, 3, 0, "roxo");
// A array $input agora é ("vermelho", "verde",
// "azul", "roxo", "amarelo");
?>
Example #2 Exemplos da array_splice()
Os seguintes comandos modificam os valores de $input da mesma forma:
<?php
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; // for arrays where key equals offset
array_splice($input, $x, 1, $y);
?>
Veja Também
- array_slice() - Extrai uma parcela de um array
- unset() - Destrói a variável especificada
- array_merge() - Funde um ou mais arrays