Lição 08 php

Lição 8: Arrays

Nesta lição veremos o que array, como usá-los e o que podemos fazer com eles.

Entender arrays pode ser um pouco difícil no início. Mas, não desanime, vamos tentar… nós iremos tornar o processo de aprendizado o mais fácil possível.

O que é array?

Array é uma coleção (ou conjunto) de elementos indexados na qual cada um dos elementos tem um número identificador único.

Parece confuso? Creia, não é tão complicado.

Imagine uma lista de palavras separadas por vírgula como a mostrada a seguir:

	maçãs, peras, bananas, laranjas, limões

Agora imagine dividir a lista tomando como separador cada vírgula. Em seguite atribua a cada divisão um número identificador único:

maçãs (0), peras (1), bananas (2), laranjas (3), limões (4)

O que você acabou de ver é um array. Podemos dar um nome para o array como, por exemplo, “frutas”. A idéa é que possamos acessar o array usando um número identificador e com ele consultar o valor correspondente usando uma sintaxe como mostrada a seguir:

frutas(0) = maças
frutas(1) = peras
frutas(2) = bananas
frutas(3) = laranjas
frutas(4) = limões

esta é a idéia por trás de arrays. Vamos ver um exemplo prático.

Como usar um array?

Continuaremos com o array de frutas. Passo a passo mostraremos como fazer para a lista funcionar como um array. Primeiro vamos criar uma variável para conter a lista como mostrado a seguir:

	<?php

	$listadefrutas = "maçãs, peras, bananas, laranjas, limões";

	?>

A seguir vamos usar a função documentaçãoexplode para dividir a lista pelas vírgulas:

	<?php

	$listadefrutas = "maçãs, peras, bananas, laranjas, limões";

	$arrFrutas = explode(",", $listadefrutas);

	?>

Viva! “$arrFrutas” agora é um array!

Observe que chamamos a função documentaçãoexplode com dois argumentos:

  1. a lista a ser dividida
  2. e o delimitador – isto é, o caractere usado para separar os itens da lista (no caso do exemplo a vírgula) colocado entre aspas “,”.

Usamos a vírgula como delimitador, mas podemos usar qualquer caractere e até mesmo uma palavra.

Vamos comentar o script e colocá-lo em uma página PHP:

	<html>
	<head>
	<title>Array</title>
	</head>
	<body>

	<?php

	// Lista separada por vírgula
	$listadefrutas = "maçãs, peras, bananas, laranjas, limões";

	// Cria um array seprando os itens da lista (tendo a vírgula como delimitador)
	$arrFrutas = explode(",", $listadefrutas);

	   // Escreve os valores do array
	   echo "<p>Lista de frutas:</p>";

	   echo "<ul>";
	   echo "<li>" . $arrFrutas[0] . "</li>";
	   echo "<li>" . $arrFrutas[1] . "</li>";
	   echo "<li>" . $arrFrutas[2] . "</li>";
	   echo "<li>" . $arrFrutas[3] . "</li>";
	   echo "<li>" . $arrFrutas[4] . "</li>";
	   echo "</ul>";

	?>

	</body>
	</html>

este exemplo é muito simples e na verdade não há vantagem alguma em usar um array para realizar este tipo de tarefa. Mas, um momento… arrays podem ser usadas de maneira muito mais vantajosa.

Loop por um array

Na lição 5 estudamos loops. A seguir veremos como realizar um loop por um array.

Quando você conhece o número de itens de um array não encontra problemas para definir um loop por ele. Você começa em 0 e desenvolve o loop até atingir o número de itens do array. No exemplo das frutas um loop pelo array seria como mostrado a seguir:

	<html>
	<head>
	<title>Array</title>

	</head>
	<body>

	<?php

	// Lista separada por vírgula
	$listadefrutas = "maçãs, peras, bananas, laranjas, limões";

	// Cria um array seprando os itens da lista (tendo a vírgula como delimitador)
	$arrFrutas = explode (",", $listadefrutas);

	   echo "<p>Lista de frutas:</p>";
	   echo "<ul>";

	   // Loop pelo array $arrFrutas
	   for ($x=0; $x<=4; $x++) {
	      echo "<li>" . $arrFrutas[$x] . "</li>";
	   }

	   echo "</ul>";

	?>

	</body>
	</html>

Como você pode notar a variável $x (que cresce de 0 a 4 no loop) foi usada para chamar o array.

Como encontrar o tamanho de um array

Mas, o que acontecerá se uma outra fruta for adicionada à lista? Nosso array passará a ter mais um item cujo número identificador será 5. Já deu para ver o problema? Precisamos alterar o loop para que ele funcione de 0 a 5, caso contrário não serão incluídos todos os elementos do array.

Não seria maravilhoso se pudéssemos saber automaticamente quantos itens um array tem?

É isso exatamente o que faremos a seguir com uso da função documentaçãoforeach. Agora podemos criar um loop que funciona em todo array independentemente do número de itens nele contido:

	<?php
	   foreach ($arrFrutas as $x) {
	      echo $x;
	   }
	?>

este loop funciona independentemente do número de itens contido no array.

Outro exemplo

A seguir mostramos um exemplo, usando array, para escrever os nomes dos meses:

	<html>
	<head>
	<title>Array</title>

	</head>
	<body>

	<?php
	// Cria um array dos meses.
	// Cria um array com os meses. Notar a vírgula antes do mês de janeiro. Isto é necessário //porque não existe mês representado pelo número 
	$arrMes = array("","Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro");

	// Chama o array com o número do mês - escreve no navegador do usuário
	echo $arrMes[date("n")];
	?>

	</body>
	</html>

Notar que usamos a função documentaçãoarray e não documentaçãoexplode para criar o array.

Ok. Isto é tudo sobre arrays! Na próxima lição veremos como escrever nossas próprias funções.

Anúncios

Deixe um comentário

Faça o login usando um destes métodos para comentar:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: