Συνθήκες ελέγχου
Οι συνθήκες ελέγχου χρησιμοποιούνται για τον έλεγχο της ροής του προγράμματος. Ανάλογα με το αν ισχύει μία συνθήκη ή όχι, εκτελείται και ο αντίστοιχος κώδικας. Οι συνθήκες ελέγχου που χρησιμοποιούνται στην PHP είναι:
- if (συνθήκη): χρησιμοποιείται για την εκτέλεση συγκεκριμένου κώδικα όταν ισχύει η συνθήκη
- if (συνθήκη) else – χρησιμοποιείται για την εκτέλεση συγκεκριμένου κώδικα όταν η συνθήκη είναι αληθής ή άλλου κώδικα όταν η συνθήκη είναι ψευδής
- if (συνθήκη) else if (συνθήκη)... else – χρησιμοποιείται για την εκτέλεση συγκεκριμένου κώδικα ανάλογα με τη συνθήκη που ισχύει
- switch (συνθήκη) – χρησιμοποιείται για την εκτέλεση συγκεκριμένου κώδικα ανάλογα με την τιμή της συνθήκης
if (συνθήκη)
Η δήλωση αυτή χρησιμοποιείται για να εκτελέσουμε ένα συγκεκριμένο κομμάτι κώδικα όταν ισχύει η συνθήκη που είναι μέσα στην παρένθεση.
<?php
$x = 5;
if ( $x > 3 ) // συνθήκη
{
echo "Το x είναι μεγαλύτερο από το 3";
} // end if
?>
if (συνθήκη) else
Αν θέλουμε να εκτελέσουμε κάποιο άλλο κομμάτι κώδικα στην περίπτωση που η συνθήκη δεν είναι αληθής, χρησιμοποιούμε τη δήλωση else.
<?php
$x = 5;
if ( $x > 3 ) // συνθήκη
{
echo "Το x είναι μεγαλύτερο από το 3.";
} // end if
else
{
echo "Το x δεν είναι μεγαλύτερο από το 3.";
} // end else
?>
if (συνθήκη) else if (συνθήκη)... else
Η δήλωση αυτή χρησιμοποιείται για την εκτέλεση συγκεκριμένου κώδικα ανάλογα με τη συνθήκη που ισχύει.
<?php
$x = 5;
if ( $x > 3 ) // συνθήκη
{
echo "Το x είναι μεγαλύτερο από το 3.";
} // end if
else if ( $x < 3 )
{
echo "Το x είναι μικρότερο από το 3.";
}
else
{
echo "Το x είναι ίσο με το 3.";
} // end else
?>
switch (συνθήκη)
Ανάλογα με την τιμή της συνθήκης εκτελείται και το ανάλογο κομμάτι κώδικα.
<?php
$x = 5;
switch ( $x )
{
case 1:
echo "Το x είναι ίσο με 1.";
break;
case 5:
echo "Το x είναι ίσο με 5.";
break;
default:
echo "Το x δεν είναι ούτε 1 ούτε 5.";
break;
} // end switch
?>
Ο παραπάνω κώδικας εξετάζει την τιμή του $x. Αν είναι ίσο με 1, τυπώνει στην οθόνη το μήνυμα 'Το x είναι ίσο με 1.'. Χρησιμοποιούμε την εντολή break όταν δε θέλουμε να πραγματοποιήσουμε περαιτέρω έλεγχο μέσα στη switch. Διαφορετικά, συνεχίζεται να γίνεται έλεγχος της τιμής $x και στα υπόλοιπα cases κατά σειρά. Επομένως, αν δεν είχαμε τις εντολές break, το επόμενο βήμα του κώδικα θα ήταν να ελέγξει αν η τιμή του $x είναι ίση με 5. Το default είναι η περίπτωση του κώδικα που εκτελείται όταν δεν ταιριάζουν οι υπόλοιπες περιπτώσεις. Αν δε βάλουμε το break, τότε η περίπτωση default εκτελείται ούτως ή άλλως.