Si claro.
Veamos, si tenemos una funcion:
Código PHP:
Ver originalfunction funcion_academica($valor) {
if($valor==1) // SI valor vale 1, devolvemos TRUE, es decir, le decimos a PHP que hemos logrado lo que queríamos.
return true;
elseif($valor==0)
return false; // SI valor vale 0, devolvemos FALSE al contrario que si valiese 1, la funcion devuelve valor negativo.
else
return 'ERROR'; // SI vale otra cosa, sacamos un erro (Por ejemplo)
}
if(funcion_academica(3) == 'gysaseds')
echo 'Hola'; // Lo va a mostrar
if(function_academica(3) == 'ERROR')
echo 'Hola'; // Lo va a mostrar
if(function_academica(3))
echo 'Hola'; // Lo va a mostrar
if(!function_academica(3))
echo 'Hola'; // NO Lo va a mostrar
Esto pasa porque si hacemos comparativa con ==, no compara tipos de dato y mientras NO devuelva False, php interpreta que la funcion tubo exito y te entra por todos los if que no tengan un ! delante.