Curso de PHP – Declaração e Manipulação de Arrays

Declarando e Manipulando Arrays no PHP

Um array é uma estrutura de dados muito comum, presente em praticamente todas as linguagens de programação. Também conhecido como Vetor, um array unidimensional pode conter elementos de qualquer tipo no PHP (inteiro, string, ponto flutuante, etc.), o que não acontece com a maioria das demais linguagens, que exigem que o array possua apenas elementos de mesmo tipo.

Podemos criar arrays de uma dimensão ou de várias dimensões. Por exemplo, um array bidimensional é também conhecido pelo nome de Matriz.

No PHP, os elementos de um array podem ser acessados por meio de índices numéricos (0,1,2,3…) ou ainda por chaves associativas (“nome”, “altura”, “placa”, etc), usando um esquema chave=>valor.

Vamos aprender a criar arrays agora.

Criando um array

Podemos criar arrays usando dois métodos distintos no PHP: com o construtor Array() e por criação implícita.

Usando o construtor Array():

<?php
// Criando um array vazio:
$vetor = Array();

// Criando um array unidimensional:
$vetor2 = Array("Fábio",28,12,150.60);

// Criando um array associativo (par chave=>valor):
$vetorAssoc = Array("Fruta"=>"Morango","Legume"=>"Cenoura","Verdura"=>"Alface");
//Criando um array de duas dimensões (matriz):
$matriz = Array(Array("j","k","l"),Array("m","n","o"),Array("p","q","r"));

//Criando um array de duas dimensões (matriz) usando índices diferentes do padrão:
$matriz2 = Array(1=>Array("a","b","c"),2=>Array("d","e","f"),3=>Array("g","h","i"));
?>

Visualizando os elementos do array:

1 – Visualizar o primeiro elemento do array $vetor2:

echo $vetor2[0] . "<br>";

2 – Visualizando o elemento (1,1) da $matriz:

echo $matriz[1][1] . "<br>";

2 – Visualizando o elemento (1,1) da $matriz2:

echo $matriz2[1][1] . "<br>";

3 – Visualizando todos os elementos dos arrays de uma vez:

print_r($matriz);
echo "<br>";
print_r($vetorAssoc);

4 – Visualizando o conteúdo dos arrays unidimensionais com laço foreach:

foreach ($vetor2 as $elemento) {
  print($elemento . "<br>");
}
echo "<br>";
foreach ($vetorAssoc as $elemento) {
  print($elemento . "<br>");
}

5 – Visualizar apenas um elemento do array associativo:

echo "<br>";
print($vetorAssoc["Fruta"]);

6 – Visualizar o conteúdo da matriz usando um laço for:

for ($i=0; $i<3; $i++) {
   for ($j=0; $j<3; $j++) {
      echo "matriz2[".$i."][".$j."] = " . $matriz2[$i][$j] . "<br>";
   }
}
7 –  Visualizar somente os elementos da matriz completa:
for ($i=0; $i<3; $i++) {
   for ($j=0; $j<3; $j++) {
      echo $matriz[$i][$j] . "<br>";
   }
}

Criando arrays por meio de criação implícita:

Quando criamos arrays implicitamente, não declaramos o array antes de usá-lo. Assim, o array é criado automaticamente quando referenciado. Usamos neste caso os caracteres [] (colchetes) em vez dos parênteses:

<?php
$vetor[] = "Fábio";
$vetor2[5] = "Azul";
$matriz3[0][0] = "Laranja";
$vetor3[] = Array(1,2,3);

// Visualizando os elementos:
echo $vetor[0] . "<br>";
echo $vetor2[5] . "<br>";
echo $matriz3[0][0] . "<br>";
?>

Manipulando os elementos de um Array

Podemos acessar os elementos em um array usando o nome da variável seguido de colchetes e o índice (ou a chave associativa) do elemento que desejamos acessar. Caso não seja informado nenhum desses parâmetros, o PHP irá assumir que você deseja inserir um novo elemento no array, em vez de acessar elementos existentes.

Os arrays são indexados a partir do índice 0 (zero), como é comum em muitas linguagens de programação. Assim, um array de 10 posições possui na verdade os índices de 0 a 9.

Vejamos alguns exemplos.

<?php

 // Criando um array vazio:
 $_vetor = Array();

 // Atribuindo um valor ao array criado:
 $_vetor[] = "Fábio";

 // Visualizando o valor armazenado:
 print($_vetor[0] . "<br>");

 // Atribuindo mais um valor ao array:
 $_vetor[] = "Mônica";

 // Atribuindo um valor à posição 4 do array (as posições 2 e 3 terão o valor NULL):
 $_vetor[4] = "Renata";

 // Visualizando todos os elementos do array com a função print_r():
 print_r($_vetor);

 // Substituindo um dos valores do array:
 $_vetor[1] = "Ana";

 // Visualizando todos os elementos do array com a função print_r():
 echo "<br>";
 print_r($_vetor);
?>

Nos exemplos acima, usamos a função print_r() do PHP, a qual permite mostrar todos os elementos do array e seus respectivos índices, de uma só vez.

Removendo um array ou seus elementos

Podemos remover um ou mais elementos de um array, ou ainda remover o próprio array com o comando unset(). Para remover apenas um elemento, basta informar qual elemento deve ser excluído. Caso queira excluir o array todo, informe apenas o nome do array, sem índices:

<?php
 // Criando um array e atribuindo quatro elementos:
 $_vetor = Array("Fábio", "Rita","João","Sandra");

 // Visualizando todos os elementos do array com a função print_r():
 print_r($_vetor);

 // Excluindo o elemento 1 do array (Rita):
 unset($_vetor[1]);

 // Visualizando todos os elementos do array novamente:
 echo "<br>";
 print_r($_vetor);

 // Removendo o array todo:
 echo "<br>";
 unset($_vetor);

 // Visualizando todos os elementos do array (agora haverá um erro):
 print_r($_vetor);
?>

Note que ao tentarmos acessar o array após ter sido removido foi gerado um erro na saída da tela:

Curso de PHP - Função unset em arrays - Erro

É  isso aí! Na próxima lição vamos mostrar como realizar Ordenação de Arrays em PHP

 

Sobre Fábio dos Reis (1195 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*