Manual do PHP
Anterior |  | Próxima

# array_splice

(PHP 4 , PHP 5)

array_splice -- Remove uma parcela do array e substitui com outros elementos

## Descrição

array array_splice ( array input, int offset [, int length [, array replacement]] )

array_splice() remove a sequência de elementos do array input especificados por offset e length, e os substitui com os elementos do array replacement, se for especificado. Retorna um array contendo os elementos removidos.

Se offset for positivo então o começo da região a ser removida será nessa posição a partir do início do array input. Se offset for negativo então o ínicio será dessa distância do final de input.

Se length for omitido, todos os elementos a partir de offset até o final do array serão removidos. Se length for especificado e positivo, então essa quantidade de elementos será removida. Se length for 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 de offset até o final do array quando replacement também é especificado, use count($input) para o argumento length.

Se o array replacement for especificado, então os elementos removidos serão substituidos pelo elementos desse array. Se offset e length são dados de forma que nada será removido, então os elementos de replacement serão inseridos no lugar especificado por offset. Dica: se a substituição for de apenas um elemento então não será necessário colocar array() para ele, a não ser que elementos seja um array.

As seguintes equivalências abaixo são válidas:

Tabela 1. Equivalências de 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, -1)
array_unshift($input, $x, $y) | array_splice($input, 0, 0, array($x, $y))
$a[$x] = $y | array_splice($input, $x, 1, $y)

Retorna um array contendo os elementos removidos.

Exemplo 1. Exemplos de 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"); ?>`

Veja também array_slice(), unset() e array_merge().

Anterior | Principal | Próxima
array_slice | Acima | array_sum