is_callable
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
is_callable — Verificar que los contenidos de una variable puedan ser llamados como una función
Descripción
Verifica que los contenidos de una variable puedan ser llamados como una función. Esto permite revisar que los contenidos de una variable contengan el nombre de una función válida, o que un array contenga un objeto adecuadamente codificado y un nombre de función.
Parámetros
-
nombre -
La función de devolución de llamada a revisar
-
solo_sintaxis -
Si es
TRUEla función solo verifica quenombrepueda ser una función o un método. Solo rechazará variables simples que no sean cadenas, o un array que no tenga una estructura válida para ser usado como llamada de retorno. Se espera que las matrices válidas tengan solo 2 entradas, la primera de las cuales es un objeto o una cadena, y la segunda una cadena. -
nombre_a_llamar -
Recibe el "nombre que puede ser llamado". En el ejemplo siguiente aquél es "algunaClase:algunMetodo". Tenga en cuenta, sin embargo, que a pesar de la implicación de que algunaClase::algunMetodo() es un método estático que puede ser llamado, este no es el caso.
Valores devueltos
Devuelve TRUE si nombre puede ser llamado, FALSE
de lo contrario.
Ejemplos
Ejemplo #1 Ejemplo de is_callable()
<?php
// Cómo chequear una variable para ver si puede ser llamada
// como una función.
//
// Variable simple que contiene una función
//
function algunaFuncion()
{
}
$variableFuncion = 'algunaFuncion';
var_dump(is_callable($variableFuncion, false, $nombre_a_llamar)); // bool(true)
echo $nombre_a_llamar, "\n"; // algunaFuncion
//
// Array que contiene un método
//
class algunaClase {
function algunMetodo()
{
}
}
$unObjeto = new algunaClase();
$variableMetodo = array($unObjeto, 'algunMetodo');
var_dump(is_callable($variableMetodo, true, $nombre_a_llamar)); // bool(true)
echo $nombre_a_llamar, "\n"; // algunaClase::algunMetodo
?>
Ver también
- function_exists() - Devuelve TRUE si la función dada ha sido definida
- method_exists() - Comprueba si existe un método de una clase