PHP: Function as condition for an if

0

I wonder if you can use a function as a condition for a if .

Example:

function estaParaExpirar($data, $dias) {
    return(strtotime($data) < strtotime("+".$dias."days") );
}

if  estaParaExpirar($row[11], "10") {
    Echo "..."
}
    
asked by anonymous 07.08.2014 / 12:55

1 answer

5

Not only is it possible, as it is extremely common to use.

if (is_array($a)) {     // função que verifica se $a é uma array
                        // e retorna verdadeiro ou falso...

if (minha_funcao($a)) { // função criada pelo usuário e que também supõe-se
                        // que retorna verdadeiro ou falso...

if (estaParaExpirar($row[11], "10")) { // o seu exemplo, desde que também
                                       // retorne verdadeiro ou falso...
The if can test any logical comparison situation, even if one (or all) of the members of that comparison is a function.

Another example:

if (estaParaExpirar($row[11], "10") || estaParaExpirar($row[11], "20")) {
// verdadeiro se qualquer uma das duas situações resultar em verdadeiro...
    
07.08.2014 / 13:17