Primeiro artigo da série de funções para manipulação de arrays com PHP. Nesse artigo demonstrarei as seguintes funções:
- array_slice
- array_splice
- array_push
- array_pop
- array_unshift
- array_shift
- array_walk
- array_map
array_slice
Retorna um pedaço do array, especificando de onde deve começar até o final. Essa função pode receber quatro parâmetros: Array: o array, offset: de onde começara a "cortagem", length: A quantidade até onde será "cortado", preserve_keys: se será preservado as keys númericas originais, caso contrário as keys serão zeradas e reorganizadas, o valor padrão é false.
$array = array("a", "b", "c", "d", "e");
print_r(array_slice($array, 2)); // "c", "d", e "e"
print_r(array_slice($array, 2, -1)); // "c", "d"
print_r(array_slice($array, -2, 1)); // "d"
print_r(array_slice($array, 0, 3)); // "a", "b", e "c"
print_r(array_slice($array, 2, -1)); // [0] => c [1] => d
print_r(array_slice($array, 2, -1, true)); // [2] => c [3] => d
array_splice
Semelhante ao array_slice, assim como a função array_slice a função array_splice também recebe os parâmetros offset e length, porém o último parâmetro é o valor que será substituído pelos elementos que foram removidos, esse valor pode ser um array ou não.
$array = array("vermelho", "verde", "azul", "amarelo");
array_splice($array, -1, 1, array("preto", "marrom"));
print_r($array); // "vermelho", "verde", "azul", "preto", "marrom"
$array = array("vermelho", "verde", "azul", "amarelo");
array_splice($array, 3, 0, "roxo");
print_r($array); // "vermelho", "verde", "azul", "roxo", "amarelo"
array_push
Adiciona um ou mais elementos no final do array. O primeiro parâmetro é o array, e o restante será os elementos que serão adicionados a esse array. Essa função retorna o novo números de elementos do array.
$array = array("laranja", "morango");
array_push($array, "melancia", "batata");
print_r($array); // laranja", "morango", "melancia", "batata"
array_pop
Retira o último elemento de um array. Essa função irá retornar o elemento retirado.
$array = array("laranja", "banana", "melancia", "morango");
$fruta = array_pop($array);
print_r($fruta); // laranja", "banana", "melancia"
array_unshift
Adiciona um ou mais elementos no início do array. O primeiro parâmetro é o array, e o restante será os elementos que serão adicionados a esse array. Essa função retorna o novo números de elementos do array.
$array = array("laranja", "morango");
array_unshift($array, "melancia", "batata");
print_r($array); // "melancia", "batata", laranja", "morango"
array_shift
Retira o primeiro elemento de um array. Essa função irá retornar o elemento retirado.
$array = array("laranja", "banana", "melancia", "morango");
$fruta = array_shift($array);
print_r($fruta); // "banana", "melancia", "morango"
array_walk
Aplica uma função em cada elemento do array. Essa função recebe o array como parâmetro e uma função que irá ser executada a cada elemento do array. Retorna um booleano caso o resultado seja verdadeiro ou falso.
$array = array("a" => "red", "b" => "green", "c" => "blue");
array_walk($array, function($value, $key){
echo 'O índice ' . $key . ' pussui o valor ' . $value . '<br />';
});
// O índice a pussui o valor red
// O índice b pussui o valor green
// O índice c pussui o valor blue
array_map
Aplica uma função em cada elemento do array. Essa função é semelhante a array_walk, porém ela retorna um novo array contendo os valores aplicados após a execução da função dada a cada elemento.
function cubo($n){
return $n * $n * $n;
}
$a = array(1, 2, 3, 4, 5);
$b = array_map("cubo", $a);
print_r($b); // [0] => 1, [1] => 8, [2] => 27, [3] => 64, [4] => 125
Referência: php.net/manual/pt_BR/ref.array.php