środa,
Konstrukcja if-else
Jednym ze sposobów warunkowego wykonywania kodu jest konstrukcja if-else.
Wbrew pozorom zwykła instrukcja if daje całkiem sporo możliwości, np. w poniższym przykładzie uwzględniono także przypadek wieku poniżej 18 lat, jednak efektem programowania w takim stylu jest dość rozwlekły kod, a warunki nie są ze sobą powiązane, co może prowadzić do błędów. Dodatkowo występuje zbędny narzut na wydajności, dlatego że sprawdzany jest dokładnie każdy warunek. Podobnie jak inne języki, PHP dostarcza rozwiązania pozwalające ominąć te niedogodności.
<?php
$wiek = 10;
if($wiek >= 18) {
echo 'pełnoletni';
}
if($wiek < 18) {
echo 'niepełnoletni';
}
// niepełnoletni
?>
W przypadku omawianego problemu lepszym rozwiązaniem jest stosowanie konstrukcji if-else, słowo kluczowe else należy rozumieć jako „w przeciwnym wypadku”.
<?php
$wiek = 10;
if($wiek >= 18) {
echo 'pełnoletni';
} else {
echo 'niepełnoletni';
}
// niepełnoletni
?>
W niektórych przypadkach stosując inną strategię, kod można trochę skrócić, jednak często prowadzi to do utraty czytelności, zwłaszcza dla początkujących programistów.
<?php
$wiek = 10;
if($wiek < 18) {
echo 'nie';
}
echo 'pełnoletni';
// wyświetli niepełnoletni
?>
Podobnie jak w przypadku instrukcji if, jeśli warunkowo ma być wykonana tylko jedna instrukcja, nawiasy klamrowe są zbędne. Warto jednak zauważyć, że obniża to czytelność kodu.
<?php
$wiek = 10;
if($wiek >= 18) echo 'pełnoletni';
else echo 'niepełnoletni';
// wyświetli niepełnoletni
?>