Una ilustración de mi nuevo libro de PHP

Imagen del libro Aliens contra Elefantes

Actualización 09/09/2021: Tras el fracaso del crowdfunding he pensado otra forma para lanzar el libro. Puedes informarte en la nueva web del libro Aliens contra Elefantes – Buenas prácticas en PHP.

Aquí tenéis una nueva imagen del libro Aliens contra Elefantes – Buenas prácticas en PHP que estoy preparando. Probablemente el mejor libro de PHP de todos los tiempos (o eso diría mi abuela).

Aliens, explosiones, naves espaciales, PHP y buenas prácticas… diversión y aprendizaje todo en uno ¿Qué más se puede pedir?

Llamar a una función con una variable en PHP

Operadores en PHP

Si a una variable que contiene el nombre de una función le añadimos un paréntesis estaremos llamando a la función:

function hola()
{
    echo "Hola!\n";
}
 
$nombreFuncion = 'hola';
 
$nombreFuncion(); // Esto funciona
'hola'(); // ¡Y esto también!

Seguro que la primera forma ya la conocías ¿pero sabías que podías hacerlo con una cadena?


¿Sabes lo que es el reto de PHP?

He creado el PHP Journey, una plataforma para que recibas de forma gratuita un email cada día con una pequeña perla de sabiduría de PHP y una pregunta que deberás responder.

Cada día pones a prueba tus conocimientos y aprendes algo nuevo.

Apúntate aquí:

https://urlantools.urlanheat.com/newsletter/php-journey/subscribe


Un ejemplo para entender el operador !== (no idéntico) en PHP

El operador ‘!=’ confunde los ceros con false. En casos como este debemos usar ‘!==’:

function numero($valor)
{
    if (is_numeric($valor)) {
        return $valor;
    }
    return false;
}
 
$elNumero = "0";
 
var_dump(numero($elNumero));
 
if (numero($elNumero)!==false) {
    echo "Usando === nos dice que es un número.\n";
}
 
if (numero($elNumero)!=false) {
    echo "Usando == nos dice que es un número.\n";
}
  • Con $elNumero = 1; funciona correctamente.
  • Con $elNumero = 0; el operador ‘!=» da un resultado erróneo.

La razón es que ‘!=’ confunde el número 0 con false.