Variable handling Funciones
PHP Manual

is_callable

(PHP 4 >= 4.0.6, PHP 5)

is_callable Verifica que los contenidos de una variable puedan ser llamados como una función

Descripción

bool is_callable ( callback $name [, bool $syntax_only = false [, string &$callable_name ]] )

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 una matriz contenga un objeto adecuadamente codificado y un nombre de función.

Parámetros

nombre

Puede ser el nombre de una función almacenada en una variable de cadena, o un objeto y el nombre de un método dentro del objeto, de este modo:

array($UnObjeto, 'NombreDelMetodo')

solo_sintaxis

Si es TRUE la función solo verifica que nombre pueda ser una función o un método. Solo rechazará variables simples que no sean cadenas, o una matriz que no tenga una estructura válida para ser usada 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

Example #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($variableFuncionfalse$nombre_a_llamar));  // bool(true)

echo $nombre_a_llamar"\n";  // algunaFuncion

//
//  Matriz que contiene un método
//

class algunaClase {

  function 
algunMetodo() 
  {
  }

}


$unObjeto = new algunaClase();

$variableMetodo = array($unObjeto'algunMetodo');

var_dump(is_callable($variableMetodotrue$nombre_a_llamar));  //  bool(true)

echo $nombre_a_llamar"\n";  //  algunaClase::algunMetodo

?>

Ver también


Variable handling Funciones
PHP Manual