Cómo comprobar si existe una función en PHP

Se puede probar si existe una función en PHP con la function_exists () función, que devuelve true si la función existe y false si no existe. Esto es muy importante para grandes desarrollo o frameworks como cakephp o wordpress, para comprobar si la función existe previamente y no de ningún tipo de incompatibilidad o inestabilidad.

Imaginemos que tenemos la siguiente función

function foo() {
...
}

Llamada será la siguiente:

function_exists('foo')

que devolverá true.

En caso contrario si no tuviéramos la función bar() declarada y la comprobamos

function_exists('bar')

nos devolverá false.

De manera que para solventar problemas de doble declaración de funciones podemos usar la siguiente comprobación.


if(!function_exists('bar')) 
{
     function bar() 
     {
          ...
     }

}

Esté método es muy usado en los plugins y elementos adicionales a wordpress, por lo que is ponéis a investigar los códigos lo veréis mucho.

3 opiniones en “Cómo comprobar si existe una función en PHP”

  1. Hola. He estado revisando todo lo que tienes sobre PHP, pero no encuentro lo que busco. Trabajo con SIG´s, pero ahora me piden que sepa programación, pero no sé a ciencia cierta cuales son los lenguajes de programación que debería saber, sólo he visto que dentro de uno de los programas que manejo utilizan PHP, entre otros. Espero me puedas ayudar o dirigir a donde me puedan auxiliar. Saludos

    1. Buenas,

      A tu pregunta si la función devuelve algún valor o no, la función function_exists() devuelve TRUE o FALSE. Del resto que me estás contando no entiendo muy bien lo que quieres hacer o el objetivo, pero puede que lo que quieres hacer no se pueda resolver con esta función de php. De todas maneras para ver más información sobre esta función puedes ir a la página oficial http://php.net/manual/en/function.function-exists.php

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *