...Personalizza la tua HomePage...

Questa Sezione è Dedicata a Tutti i Webmaster Nofiti e Non

Versione Stampabile Versione PDF Versione .DOC Versione .ZIP Scrivimi i tuoi Commenti

Il Costrutto IF
Autore :   Linguaggio :  PHP - Hypertext Preprocessor
Data :  24/06/2004 09:17:31 Accessi :  1
Il costrutto if (a) then (b) else (c), tramite il quale è possibile controllare il flusso del programma, ha in PHP la seguente sintassi:


if (condizione)
istruzione1;
else
istruzione2;


La condizione generalmente consiste nel comparare una variabile con una costante o due variabili tra loro.
Se la condizione risulta vera (cioè restituisce il valore true) allora viene eseguita istruzione1 altrimenti viene eseguita istruzione2.


Vediamo subito un esempio.
Il seguente codice:


<HTML>
<HEAD>
<TITLE>Example 5.01</TITLE>
</HEAD>
<BODY>
<?
$Surname = "Bit";
if ($Surname == "Bit")
echo ("Hello, Mr.
Bit!");
else
echo ("Who are you?");
?>
</BODY>
</HTML>


fornirà l'output:


Hello, Mr.
Bit!

In quanto la prima condizione risulta subito verificata.
Per eseguire confronti tra variabili e/o costanti si fa uso degli operatori di confronto, la cui sintassi PHP è riportata in tab.5.1


Tab.5.1: Operatori di confronto

= = Uguale a
< Minore di
> Maggiore di
!= Diverso da
>= Maggiore Uguale a
<= Minore Uguale a


Fate attenzione all'operatore "uguale a" che è espresso da due simboli "=" (uguale) affiancati ("==").
Uno degli errori più comuni commessi dai programmatori, non solo in PHP, è quello di dimenticare un "=" nell'eseguire un confronto.
Questo tipo di errore altera gravemente il flusso logico del programma.
Osservate le seguenti righe:


if ($Lastname = = "Bit") echo "Hello, Mr.
Bit!";

$Lastname = "Bit";
La prima istruzione viene interpretata come un confronto e restituisce il valore vero se la variabile $Lastname contiene il valore "Bit", falso altrimenti.
La seconda istruzione invece assegna il valore "Bit" alla variabile $Lastname.
Volendosi complicare la vita, PHP propone alcuni metodi alternativi per rappresentare un'istruzione if...then...else...
Qui verranno menzionati solo a fini di completezza.


<? ...
if (condizione) : ?>
istruzione1 in HTML
<? else : ?>
istruzione2 in HTML
<? endif ?>


Questa prima forma alternativa consente di definire un blocco di istruzioni HTML che verrà eseguito solo se la precedente condizione risulta vera.
Il blocco viene concluso dall'istruzione endif.
Il codice PHP che segue è funzionalmente analogo a quello visto all'inizio del capitolo, ma appare evidentemente più complesso:


<HTML>
<HEAD>
<TITLE>Example 5.01</TITLE>
</HEAD>
<BODY>
<?
$Surname = "Bit";
if ($Surname == "Bit"): ?>

Hello, Mr.
Bit!

<? else: ?>

Who are you?

<? endif ?>
</BODY>
</HTML>


L'output sarà sempre:


Hello, Mr.
Bit!


Se istruzione1 è un'istruzione composta e preferite evitare le parentesi graffe potete ancora far uso della parola chiave endif come mostrato di seguito.


if (condizione)
istruzione1;
endif;


Quando siamo interessati ad analizzare non più una sola, ma più condizioni prima di decidere quale istruzione eseguire, possiamo far uso della parola chiave elseif che ci consente di indicare una serie di condizioni che verranno analizzate una ad una in ordine sequenziale.
Ogni condizione viene testata solo se tutte le precedenti sono risultate false.
Se una condizione risulta vera tutte le condizioni successive, sia vere che false, non verranno prese in considerazione.
Questo genere di costrutto viene spesso indicato col nome di catena if…then…else…
Di seguito è riportato un esempio.
[pending: esempio if...
elseif...
esleif...
else ]
Il costrutto IF (a) THEN (b) ELSE (c) viene completato dall'utilizzo degli operatori booleani AND, OR e NOT.

Ritorna


 NEWS 
12/09/2007 13:08:14
PAURA
Marco Travaglio con Gomez e Crozza ed Elio

11/09/2007 14:44:48
IL V-DAY: un evento NUOVO !!!!!
Aria fresca in Parlamento articolo del Sole24ore: http://www.ilsole24ore.com/art/SoleOnLine4/At...


28/06/2007 14:20:55
LEOPARDI SALUTI i 500
Certo ragazzi, anche noi nel nostro piccolo cresciamo, e Leopardi è il cinquecentesimo saggio nella ...


12/04/2007 11:31:15
ATTENZIONE A CheckMessenger.NET! , è una TRUFFA
Ennesito sito truffaldino: si chiama CheckMessenger e vi promette di mostrarvi se i vostri contatti ...


26/01/2007 11:58:34
AGGIORNATE TUTTE LE SEZIONI
AGGIORNATE TUTTE LE SEZIONI Sì, cari amici. Ho provveduto ad aggiornare le principali sazioni de...


:: ELENCO NEWS ::

  
Valid XHTML 1.0! Valid CSS!