Biblioteca de Funções - Parte 4
Continuação dos artigos sobre funções do PHP.
Olá amigos! Estou de volta com a 4ª parte da Biblioteca de Funções, nesse artigo começaremos a falar sobre as funções utilizadas no tratamento de arrays.
Como já disse na Parte 2 desta série de artigos, trabalhar com arrays pode se tornar muito fácil e descomplicado quando se domina e utiliza as funções de manipulação de arrays, tornando o trabalho muito mais rápido e prático.
Essa função cria um array baseado nos parâmetros fornecidos, sendo possível fornecer o índice de cada elemento. O valor do índice pode ser um valor de qualquer tipo, e não um inteiro. Caso o índice não seja fornecido, será atribuído a ele um valor inteiro seqüencial, iniciando-se em 0 (zero) ou do último número inteiro explícito.
$trimestre_1 = array(1 => 'January', 'February','March');
print_r($trimestre_1);
[3] => Marco
Não recomendo o uso de arrays com índices variados, pois pode confundir facilmente que está trabalhando no código. Caso seja necessário, tenha muita atenção no uso.
Essa função cria um array onde os elementos são inteiros, pertencentes ao intervalo especificado na função. Caso o primeiro parâmetro seja maior que o segundo o valor retornado será vazio (false).
// array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ,11, 12)
foreach(range(0, 12) as $numero) {
// Utilização da seqüência de caracteres introduzidos no 4.1.0
foreach(range('a', 'i') as $letra) {
foreach(range('c', 'a') as $letra) {
Essa função apenas troca as posições dos elementos do array, não retornando valor algum.
$numeros = range(1,20);
while (list(, $numeros) = each($numbers)) {
echo "$numeros ";
Funções de "navegação"
As variáveis do tipo array têm um ponteiro interno que indica qual o próximo elemento será acessado, no caso de não ser especificado um índice. As funções listadas abaixo modificam esse ponteiro, fazendo com que seja possível percorrer o array para verificar suas chaves e elementos.
Seta o ponteiro para o 1º elemento do array, retornando o conteúdo do elemento.
$array = array('primero elemento', 'segundo elemento', 'terceiro elemento', 'quarto elemento');
//o ponteiro está sobre o primeiro elemento
echo current($array)."
n"; // "primeiro elemento"
// pula dois elementos
n"; // "terceiro elemento"
// reinicia o ponteiro, começa novamente o primeiro elemento
Seta o ponteiro interno para o último elemento do array, retornando o conteúdo desse elemento.
$carros = array('corsa', 'fox', 'parati');
print end($carros); // parati
Seta o ponteiro para o elemento seguinte do array, retornando o conteúdo desse elemento.
$transportes = array('moto', 'bicicleta', 'carrro', 'avião');
$mode = current($transportes); // $mode = 'moto';
$mode = next($transportes); // $mode = 'bicicleta';
$mode = next($transportes); // $mode = 'carrro';
$mode = prev($transportes); // $mode = 'bicicleta';
$mode = end($transportes); // $mode = 'avião';
Não aconselho o uso dessa função para saber se um elemento é o último do array, pois ela pode retornar false tanto no final do array como no caso de haver um elemento vazio.
Seta o ponteiro para o elemento anterior do array, retornando o conteúdo desse elemento. Funciona de maneira inversa a next.
O valor retornado é o conteúdo do elemento atual do array, indicado pelo ponteiro.
pos ($transportes); // retorna "carro";
O seu funcionamento é parecido com o da função pos, mas ao invés de retornar o elemento atual indicado pelo ponteiro do array, retorna seu índice.
'fruta1' => 'maçã',
'fruta2' => 'laranja',
'fruta3' => 'uva',
'fruta4' => 'maçã',
'fruta5' => 'maçã');
// este ciclo exibirá toda a chave do array associativo
// onde o valor é igual a "maçã"
while ($fruta_nome = current($array)) {
if ($fruta_nome == 'maçã') {
Retorna um array que contém o índice e o elemento atual indicado pelo ponteiro do array. O valor retornnado é um array de quatro elementos, cujos índices são 0, 1, "key" e "value". Os elementos de índices 0 e "key" armazenam o índice do valor atual, e os elementos de índices 1 e "value" contém o valor do elemento atual indicado pelo ponteiro.
Esta função pode ser utilizada para percorrer todos os elementos de um array e determinar se já foi encontrado o último elemento, pois no caso de haver um elemento vazio, a função não retornará o valor false. A função each só retorna false depois que o último elemento do array foi encontrado.