Η δομή switch-case στην PHP
Στην PHP υπάρχει μια ειδική δομή switch-case,
η οποία χρησιμοποιείται για την επιλογή μιας τιμής
από μια σειρά τιμών. Μελετήστε τη σύνταξή της:
<?php
switch (μεταβλητή) {
case 'τιμή1':
/*
εδώ ο κώδικας που θα εκτελεστεί στην περίπτωση,
όπου η μεταβλητή έχει την τιμή1
*/
break;
case 'τιμή2':
/*
εδώ ο κώδικας που θα εκτελεστεί στην περίπτωση,
όπου η μεταβλητή έχει την τιμή2
*/
break;
case 'τιμή3':
/*
εδώ ο κώδικας που θα εκτελεστεί στην περίπτωση,
όπου η μεταβλητή έχει την τιμή3
*/
break;
default:
/*
εδώ ο κώδικας που θα εκτελεστεί στην περίπτωση,
όπου δεν ταιριάζει με καμία τιμή
*/
break;
}
?>
Όπως μπορείτε να παρατηρήσετε, η switch-case
αποτελεί μια εναλλακτική λύση σε πολλαπλά
elseif. Ας δούμε ένα παράδειγμα.
Ας υποθέσουμε ότι έχουμε τον ακόλουθο κώδικα:
<?php
$num = 1;
if ($num === 1) {
echo 'variant 1';
} elseif ($num === 2) {
echo 'variant 2';
} elseif ($num === 3) {
echo 'variant 3';
} else {
echo 'variant not supported';
}
?>
Ας ξαναγράψουμε αυτόν τον κώδικα χρησιμοποιώντας τη δομή switch-case:
<?php
$num = 1;
switch ($num) {
case 1:
echo 'variant 1';
break;
case 2:
echo 'variant 2';
break;
case 3:
echo 'variant 3';
break;
default:
echo 'variant not supported';
break;
}
?>
Η μεταβλητή $num μπορεί να πάρει τις τιμές
1, 2, 3 ή 4.
Προσδιορίστε σε ποια εποχή του χρόνου αντιστοιχεί η τιμή
αυτής της μεταβλητής.