Tabelas ou Arrays em PHP

Um tipo de variável que já descrevemos mas pode ser relativamente complicado de assimilar em relação à maioria, são os arrays. Um array é uma variável que está formada de vários elementos, cada um deles catalogado dentro dele mesmo por meio de uma chave.

Nos capítulos anteriores púnhamos como exemplo um array chamado sentido que continha os diferentes sentidos do ser humano:

<?
$sentido[1]=”ver”;
$sentido[2]=”tocar”;
$sentido[3]=”ouvir”;
$sentido[4]=”gosto”;
$sentido[5]=”cheirar”;
?>

Neste caso este array cataloga os seus elementos, normalmente chamados valores, por número. Os números do 1 ao 5 são por conseguinte chaves e os sentidos são os valores associados. Nada nos impede de utilizar nomes (cadeias) para classificá-los. A única coisa que temos de fazer é colocá-los entre aspas:

<?
$moeda[“espanha”]=”Peseta”;
$moeda[“Portugal”]=”Escudo”;
$moeda[“usa”]=”Dolar”;
?>

Outra forma de definir identicamente este mesmo array e que nos pode ajudar na criação de arrays mais complexos é a seguinte sentença.

<?
$moeda=array(“espanha”=> “Peseta”,”portugal” => “Escudo”,”usa” => “Dolar”);
?>

Uma forma muito prática de armazenar dados é mediante a criação de arrays multidimensionais (tabelas). Suponhamos o seguinte exemplo: Queremos armazenar dentro de uma mesma tabela o nome, moeda e língua falada em cada país. Para fazê-lo podemos utilizar um array chamado país que virá definido por estas três características (chaves). Para criá-lo, deveríamos escrever um expressão do mesmo tipo que a vista anteriormente na que meteremos um array dentro de outro. Este processo de incluir uma instrução dentro de outra chama-se aninhar e é muito corrente em programação.

<?
$pais=array
(
“espanha” =>array
(
“nome”=>”Espanha”,
“lingua”=>”Castelhano”,
“moeda”=>”Peseta”
),
“portugal” =>array
(
“nome”=>”Portugal”,
“lingua”=>”Portugues”,
“moeda”=>”Escudo”
)
);
echo $pais[“portugal”][“moeda”] //Saca pelo ecrã: “Escudo”
?>

Antes de entrar em detalhe com este pequeno script, comentemos alguns pontos referentes a sintaxe. Como podemos observar, nesta sequência de script não introduzimos ponto e vírgula “;” no fim de cada linha. Isto deve-se simplesmente a que o que escrevemos pode ser considerado como uma única instrução. Na realidade, somos nós quem decidimos cortá-la em varias linhas para facilitar a sua leitura. A verdadeira instrução acabaria uma vez definido completamente o array, e é aí precisamente onde colocamos o único ponto e vírgula. Por outro lado, podes observar como usamos o tabulador para separar umas linhas mais que outras do princípio. Isto também se faz por questões de clareza, pois permite-nos ver que partes estão incluídas dentro de outras. É importante acostumar-se a escrever desta forma assim como a introduzir comentários pois a clareza dos scripts é fundamental na hora de depura-los. Um pouco de esforço pode poupar-nos muitas horas na hora de corrigi-los ou modificá-los meses mais tarde.
Passando já ao comentário de programa, como podes ver, este permite-nos armazenar tabelas e a partir de uma simples petição, visualizar um determinado valor pelo ecrã.

O interessante é que a utilidade dos arrays não acaba aqui, podendo também utilizar toda uma série de funções criadas para ordená-los por ordem alfabético directo ou inverso, por chaves, contar o número de elementos que compõem o array para além de poder movimentar-mo-nos nele para frente ou para trás.

Muitas são as funções propostas por PHP para o tratamento de arrays, não vamos entrar aqui em detalhe das mesmas. Somente incluiremos esta pequena tabela que pode ser complementada, se necessário, com a documentação que mencionamos.

Função Descrição
array_values (meu_array) Lista os valores contidos em meu_array
asort(meu_array) e arsort(meu_array) Ordena por ordem alfabética directa ou inversa em função dos valores
count(meu_array) Dá-nos o número de elementos do nosso array
ksort(meu_array) e krsort(meu_array) Ordena por ordem alfabética directa ou inversa em função das chaves
list ($variavel1, $variavel2…)=meu_array Atribui cada variável a cada um dos valores do array
next(meu_array), prev(meu_array), reset(meu_array) y end(meu_array) Permite-nos mover por dentro do array com um ponteiro para frente,para trás, ao principio e ao fim.
each(meu_array) Dá-nos o valor e a chave do elemento no qual nos encontramos e mexe o ponteiro ao elemento seguinte.

Também devemos relembrar a grande utilidade do loop foreach que recorre de forma sequencial o array do princípio ao fim.

Fonte: http://www.criarweb.com/artigos/82.php

Deixe um comentário