Флагове във функции в PHP
Във функции може да се използват флагове
в неявен вид с помощта на инструкцията
return. Нека да видим
как се прави това. Нека имаме
следната функция, която проверява
дали всички елементи на масива са положителни
числа:
<?php
function isPositive($arr) {
$flag = true;
foreach ($arr as $elem) {
if ($elem < 0) {
$flag = false;
}
}
return $flag;
}
?>
Нека пренапишем кода на функцията с помощта на неявно използване на флагове:
<?php
function isPositive($arr) {
foreach ($arr as $elem) {
if ($elem < 0) {
return false;
}
}
return true;
}
?>
Как работи това: ако в масива се намери
нужният елемент - ние излизаме от функцията
(и от цикъла също) с помощта на return.
Но ако в масива не се намери нужният елемент
- няма да има изход от функцията и изпълнението
ще достигне до командата return true. И
ще се получи, че функцията ще върне true
в знак, че в масива всички елементи са
положителни.
Направете функция, която с параметър ще приема масив с числа, и ще проверява, дали всички елементи в този масив са четни числа.
Направете функция, която с параметър ще приема число и ще проверява, дали всички цифри на това число са нечетни.
Направете функция, която с параметър ще приема масив и ще проверява, дали в този масив има два еднакви елемента един след друг.