Quando se está a programar torna-se muito útil construir listas de items com a mais variada informação. Podemos usar estas listas para muitas situações diferentes. Na maior parte das linguagens de programação existem vário métodos para o fazer, no entanto em PHP temos apenas os arrays. Felizmente que o PHP engloba imensas funções relacionadas com os arrays, permitindo-nos usá-las todas de inúmeras formas.

Os arrays são bem simples. É como uma lista de items, em que cada entrada tem duas propriedades: uma chave e um valor. Se tivermos a chave podemos aceder directamente ao valor, caso contrário, teremos que procurar o valor pretendido. Parece ser algo complicado inicialmente, mas assim que lhe apanharem o jeito, trabalhar com arrays fica bem mais simples.

Podemos criar um array usando a função array() desta forma:

 

Se pretendermos, podemos definir logo novos elementos do array como parametro da seguinte forma:

 

Neste exemplo apenas especificamos os valores. Neste caso, a chave é um contador inteiro, iniciando-se em 0 (zero). Isto significa que o primeiro valor estará na chave 0, o seguinte na chave 1, e assim sucessivamente. Para aceder a um determinado valor com base na chave é feito desta forma:

 

Simplesmente especificamos o número da chave pretendida dentro dos parêntesis rectos. Em alguns casos podemos querer iniciar o número da chave sem ser a partir do zero. Isto pode ser feito definindo qual será a primeira chave:

 

Aqui o contador da chave começa em 2. Podemos ainda definir chaves específicas para cada um dos valores, desde que cada valor tenha uma chave única. Em alguns casos, chaves com nomes em vez de números faz mais sentido:

 

Usamos o operador => para atribuir a idade ao nome, ou seja, atribuir o valor à chave. Por vezes torna-se necessário adicionar items mais tarde, depois de já termos o array criado:

 

Aqui temos de usar parêntesis rectos vazios para que o PHP cria uma chave para o novo item. Podemos também usar as técnicas anteriores quando estamos a adicionar novas chaves/valores ao array.

Arrays Multidimensionais

Os arrays nos exemplos anteriores têm uma característica comum: são todos unidimensionais, ou seja, todos consistem em valores simples. Mas se precisarmos de um array que contenha um conjunto de arrays não há problema, o PHP tem solução para tal. O PHP permite termos arrays de dimensões ilimitadas, o que significa que um array pode conter um conjunto de arrays, que contém um conjunto de arrays, etc. Aqui fica um exemplo:

 

Este é um exemplo um pouco mais complexo, vamos ver como está definido e o que faz.

Começamos por criar um array vazio chamado contactos, no qual queremos guardar os nomes de pessoas com diferentes categorias. O primeiro array irá conter um conjunto de nomes de categorias, cada uma das quais aponta para um array com os nomes das pessoas correspondentes a essa categoria.

Atribuímos simultaneamente a categoria e os nomes das pessoas de uma vez só, cada categoria recebe um novo array com as respectivas pessoas. Para termos uma listagem decente desta informação usamos dois loops foreach, um que percorre cada uma das categorias e outro que dentro da categoria percorre todas as pessoas dessa categoria.

Como podem depois comprovar, este exemplo produz uma listagem das pessoas separadas pelas respectivas categorias.

Artigo anterior do tutorial PHP:

Trabalhar com Strings em PHP

Tiago Ramalho

Tiago Ramalho é um profissional de Informática interessado em Internet, Programação .NET e PHP e blogging. Nos tempos livres escreve nos interessespessoais.com sobre Jardim, Saúde, Sistemas, utilitários e outros temas relacionados com informática.

More Posts - Website - Twitter - Pinterest - Google Plus