© Marco Olivo <me@olivo.net>, luglio 2001
COSTRUTTI FONDAMENTALI
Misto di Perl e C (ma anche Java per quel che riguarda le classi), il PHP trae il meglio da questi linguaggi risultando
sufficientemente performante ma soprattutto relativamente sicuro. I costrutti principali che non possono mancare nel
proprio know-how sono:
Chi conosce già altri linguaggi si senta libero di saltare alla sezione successiva dando magari una occhiata alla
sintassi di questi costrutti per avere una visione generale.
IF-THEN-ELSE
Costrutto condizionale fondamentale, l'if-then-else in PHP ha questo aspetto (sintassi):
if (condition1) {
statement1;
}
else if (condition2) {
statement2;
}
[...]
else {
statement3;
}
Il risultato è il seguente: arrivati al primo "if" l'interprete valuterà l'espressione "condition1" e, se essa
risulterà vera (ad es., se il numero 6 è diverso dal numero 5) allora eseguirà lo statement "statement1"
In caso contrario passerà a valutare gli "if successivi" e, se nessuno dovesse essere verificato, eseguirà
"statement3".
Notare che solo il primo "if" è necessario, gli altri sono opzionali. Notare inoltre che una volta preso un "ramo"
del costrutto verrà eseguito SOLAMENTE quel blocco di istruzioni, saltando tutti gli altri.
Notiamo anche che le parentesi graffe racchiudono un blocco di istruzioni. Nonostante siano superflue quando il blocco
di istruzioni è rappresentato da una singola istruzione, è buona norma di programmazione racchiudere sempre le
istruzioni tra parentesi graffe (in ogni linguaggio). In tal modo, a seguito di una aggiunta successiva, il risultato
dello script sarà quello voluto, evitando noiosi e soprattutto costosi tempi morti di debugging nel caso si siano
dimenticate le parentesi.
FOR
Il ciclo "for" itera un dato blocco di istruzioni k volte. La sua sintassi è:
for (inizializzazione; condizione; incremento) {
blocco_di_istruzioni;
}
"inizializzazione" è una istruzione che inizializza una (o pił) variabili; "condizione" è la condizione sulle variabili
di inizializzazione che deve essere verificata perchè venga eseguito una volta ancora il ciclo; "incremento" è una
espressione che incrementa una (o pił) delle variabili di inizializzazione
Ricordando quanto detto sopra riguardo alle variabili, il seguente esempio stampa 4 volte la stringa "ciao":
<PHP
for ($i = 0; $i < 4; $i = $i + 1) {
echo "ciao\n";
}
?>
Il carattere "\n" rappresenta un newline, cioe' un carattere di "a capo"
Notate che l'istruzione
$i = $i + 1;
in PHP può essere abbreviata come
$i++; /* post-incremento: prima usa il valore, poi incrementa */
oppure come
++$i; /* pre-incremento: prima aumenta di uno, poi usa la variabile cosi' incrementata */
Le nozioni di pre-incremento e post-incremento sono superflue per gli scopi di questa guida. Ciò non significa che
un buon programmatore non le sappia opportunamente usare, visto che sono presenti in quasi tutti i linguaggi di
programmazione.
WHILE
Il ciclo "while" permette maggiore flessibilità del ciclo "for" in quanto il controllo sulla condizione non è
"fisso", cioè basato su un incremento di una variabile, ma può essere molto pił "flessibile", in relazione a
particolari condizioni che si possono verificare sui dati.
La sua sintassi è:
while (condition) {
statement;
}
e la sua semantica è la seguente: esegui "statement" fintantochè la condizione "condition" è verificata.
Es.
<?PHP
$i = 0;
while ($i < 6) {
echo $i;
$i++;
}
?>