Le variabili array in php
Gli array sono variabili speciali e multidimensionali, in grado di contenere più informazioni. Sono anche dette vettori.
Come funziona un array in php
Si tratta di una variabile come le altre. Utilizza il prefisso $ e ha un nome.
A differenza delle comuni variabili, il vettore ha anche un indice, un valore numerico intero e positivo, contenuto tra parentesi.
$nome([posizione])
Ogni valore dell'indice può contenere un'informazione diversa. La variabile array è una sorta di file.
Un esempio pratico
Nel linguaggio PHP non è necessario la dichiarazione di una variabile array, può essere utilizzata semplicemente con l'assegnazione dei valori come una qualsiasi variabile.
$var(0)="Roma";
$var(1)="Milano";
Spesso l'assegnazione viene fatta in sequenza ma non è obbligatorio. Potrei anche assegnare i valori a un indice più alto senza aver assegnato nulla ai precedenti.
$var(5)="Roma";
$var(6)="Milano";
In alternativa è anche possibile assegnare i valori al vettore tramite l'istruzione array.
$var=array("Roma", "Milano");
In quest'ultimo caso l'assegnazione dei valori è sempre sequenziale e parte da zero. Il primo valore ha l'indice 0, il secondo valore l'indice 1, e così via.
Le tipologie di array in Php
Esistono due tipi di variabili vettore in php: l'array scalare e l'array associativo.
Array scalare
L'array scalare utilizza un indice numerico. Il numero determina la sequenza e la posizione degli elementi ( informazioni ) al suo interno.
Esempio
<?
$var = array ("Roma", "Milano", "Bologna", "Napoli", "Torino");
echo ($var[2]);
?>
Nell'esempio precedente ho definito un array ($var) con cinque elementi.
L'istruzione array mi consente di assegnare in sequenza le informazioni alle prime cinque posizioni.
La prima posizione è sempre 0, la seconda è 1, la terza è 2, la quarta è 3, e così via.
Nella seconda istruzione visualizzo a video il contenuto dell'indice $var(2) ossia della seconda posizione. Il risultato è il seguente:
Bologna
Allo stesso modo visualizzando il contenuto di $var(0) verrebbe stampato a video il contenuto della prima posizione ( Roma ).
Array associativo
L'array associativo non ha un indice numerico. La posizione degli elementi nel vettore è assegnata con una chiave univoca.
Esempio
<?
$var = array ("nome" => "Paolo", "cognome" => "Rossi", "anni" => 18);
echo ($var[nome]);
?>
Nella prima riga ho definito l'array $var tramite l'istruzione array e ho assegnato alcune informazioni alle prime tre posizioni dell'elenco.
Alla prima posizione ho assegnato la chiave "nome" e l'informazione "Paolo", alla seconda la chiave "cognome" e l'informazione "Rossi", e così via.
Nella terza istruzione visualizzo a video il contenuto del vettore con la chiave "cognome". Il risultato sullo schermo è il seguente:
Rossi
In questo caso non c'è un indice numerico a individuare la posizione degli elementi nella sequenza del vettore, bensì una chiave alfanumerica.
La chiave deve essere univoca nel vettore ed essere utilizzata una volta sola. Ad esempio, nel vettore $var esiste una sola posizione "nome".