Bandeiras em funções PHP
Em funções, é possível usar bandeiras
de forma implícita usando a instrução
return. Vamos ver
como isso é feito. Suponha que temos a
seguinte função, que verifica
se todos os elementos de um array são números
positivos:
<?php
function isPositive($arr) {
$flag = true;
foreach ($arr as $elem) {
if ($elem < 0) {
$flag = false;
}
}
return $flag;
}
?>
Vamos reescrever o código da função usando bandeiras de forma implícita:
<?php
function isPositive($arr) {
foreach ($arr as $elem) {
if ($elem < 0) {
return false;
}
}
return true;
}
?>
Como isso funciona: se um elemento necessário for encontrado
no array - sairemos da função
(e do loop também) usando return.
Mas se o elemento necessário não for encontrado no array
- não haverá saída da função e a execução
chegará ao comando return true. E
assim, a função retornará true
como um sinal de que todos os elementos
no array são positivos.
Faça uma função que receberá um array de números como parâmetro e verificará se todos os elementos desse array são números pares.
Faça uma função que receberá um número como parâmetro e verificará se todos os dígitos desse número são ímpares.
Faça uma função que receberá um array como parâmetro e verificará se existem dois elementos iguais consecutivos nesse array.