Flagi w funkcjach PHP
W funkcjach można używać flag
w sposób niejawny za pomocą instrukcji
return. Spójrzmy,
jak to się robi. Załóżmy, że mamy
następującą funkcję sprawdzającą,
czy wszystkie elementy tablicy są liczbami
dodatnimi:
<?php
function isPositive($arr) {
$flag = true;
foreach ($arr as $elem) {
if ($elem < 0) {
$flag = false;
}
}
return $flag;
}
?>
Przepiszmy kod funkcji używając flag w sposób niejawny:
<?php
function isPositive($arr) {
foreach ($arr as $elem) {
if ($elem < 0) {
return false;
}
}
return true;
}
?>
Jak to działa: jeśli w tablicy znajdzie się
odpowiedni element - wyjdziemy z funkcji
(i również z pętli) za pomocą return.
Ale jeśli w tablicy nie znajdzie się odpowiedni element
- nie nastąpi wyjście z funkcji i wykonanie
dotrze do polecenia return true. I
okaże się, że funkcja zwróci true
jako znak, że wszystkie elementy w tablicy
są dodatnie.
Stwórz funkcję, która parametrem będzie przyjmować tablicę z liczbami i sprawdzać, czy wszystkie elementy w tej tablicy są liczbami parzystymi.
Stwórz funkcję, która parametrem będzie przyjmować liczbę i sprawdzać, czy wszystkie cyfry tej liczby są nieparzyste.
Stwórz funkcję, która parametrem będzie przyjmować tablicę i sprawdzać, czy w tej tablicy znajdują się dwa identyczne elementy obok siebie.