Corso di PHP

Gli array III

 

Riprendiamo la trattazione delle funzioni essenziali per la manipolazione e gestione degli array. La scorsa lezione abbiamo visto il funzionamento del costrutto array. Analizziamo adesso un altra funzione utile per la manipolazione degli array: la funzione list();

list()
Vediamone la sintassi:

void list([$variabile])=$array

Anche in questo caso non si tratta di una vera e propria funzione, ma piuttosto di un costrutto del linguaggio. Viene usata per effettuare numerosi assegnamenti con una sola istruzione. Facciamo un esempio:

<html>
<head>
<title>list</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF">
<?php
                $disney = array("topolino", "paperino", "pluto", "pippo",
                                               "nonna papera");
                list($a, $b, $c, $d, $e)=$disney;
                echo $a;
?>
<p><?php echo $b?></p>
<p><?php echo $c?></p>
<p><?php echo $d?></p>
<p><?php echo $e?></p>
<p>&nbsp;</p>
</body>
</html>


Nel nostro esempio abbiamo creato un array contenente alcuni personaggi dei cartoni. Tramite la funzione list() abbiamo assegnato i cinque elementi contenuti nel vettore ad altrettante variabili per poterle poi visualizzare nel browser. Il costrutto list() funziona solo con i vettori, ovvero con gli array indirizzabili tramite indice numerico.

Attenzione: l’uso della funzione list() causerà l’assegnamento anche di valori eventualmente nulli. Occorre tenere presente questa circostanza per non incorrere in errori di programmazione difficilmente individuabili e recuperabili. Per esempio le istruzioni

$disney = array(1=>"Topolino", 2=>"Paperino", 3=>"Pluto", 4=>"Pippo",
                5=>"Nonna Papera");
list($a, $b, $c, $d, $e) = $disney;


equivalgono ad assegnare alla variabile $a il valore dell’elemento dell’array di indice zero. Si potrebbero avere quindi risultai non attesi, come il fatto che la variabile $e contenga il valore “Pippo” e non “Nonna Papera”.

Come vedremo nel seguito, molto spesso sarà comodo sapere quanti sono gli elementi presenti in un array. PHP viene incontro anche a questa esigenza del programmatore fornendo una funzione di uso estremamente semplice per contare gli elementi di un vettore. Si tratta della funzione count().

count()
La funzione count è implementata sia da PHP3 che da PHP4. Vediamone la sintassi:

int count($var)

La funzione count() conta gli elementi della variabile passatagli come argomento; si tratta tipicamente di un array anche se sono ammesse variabili di qualsiasi tipo. Nel caso in cui la variabile non sia un array restituisce il valore 1, mentre ritorna il valore 0 nell’eventualità che la variabile non sia stata settata.
Attenzione: il valore zero può essere ritornato anche nel caso in cui la variabile sia stata inizializzata con un array vuoto.
Analizziamo qualche esempio:

$array[0] = 2;
$array[1] = 4;
$array[2] = 15;
$elementi = count ($array);
echo $elementi;


In questo caso $array è un vettore di interi. La variabile $elementi restituita dalla funzione count() assumerà il valore 3, ossia il numero degli elementi presenti nell’array, e non il valore 2, che è il massimo indice del vettore.

Mentre le istruzioni:

$array[2] = 21;
$array[4] = "";
$array[6] = 15;
$array[8] = 7;
$array[10] = 11;
$array[12] = "";
$elementi = count ($a);
echo $elementi;


faranno visualizzare sul browser il valore 6, in quanto gli elementi allocati nel vettore sono sei anche se due di essi sono elementi nulli.

Con l’analisi di quest’ultima funzione abbiamo esaurito la trattazione delle funzioni di uso comune riguardanti gli array. Nel seguito del corso tratteremo anche le numerose altre che PHP mette a disposizione del programmatore, mentre dalla prrossima volta cominceremo la discussione sull’ultimo, ma non per questo meno importante, tipo di dato rimasto: gli oggetti.

 

Torna all'indice Generale del corso di Corso di PHP di Software Planet