La función is_callable() es una función incorporada en PHP que se usa para verificar que el contenido de una variable se pueda llamar como una función. Puede verificar que una variable simple contenga el nombre de una función válida, o que una array contenga un objeto y un nombre de función correctamente codificados.
Sintaxis:
bool is_callable ( $variable_name, $syntax_only, $callable_name )
Parámetros: La función is_callable() acepta tres parámetros como se muestra en la sintaxis anterior y se describen a continuación. Depende del usuario usar cuántos parámetros uno, dos o tres.
- $variable_name: el nombre de una función almacenada en una variable de string $variable_name, o un objeto y el nombre de un método dentro del objeto.
- $syntax_only: si se establece en TRUE, la función solo verifica que el nombre pueda ser una función o un método. Rechazará variables simples que no sean strings, o una array que no tenga una estructura válida para ser utilizada como devolución de llamada. Se supone que los válidos tienen solo 2 entradas, la primera de las cuales es un objeto o una string, y la segunda una string.
- $callable_name: Recibe el nombre llamable. Esta opción solo se implementa para las clases.
Valor devuelto: Esta función devuelve un valor de tipo booleano. Devuelve TRUE si se puede llamar a $variable_name, FALSE de lo contrario.
El siguiente programa ilustra la función is_callable() en PHP:
Programa 1: la variable simple contiene una función
<?php // To check a variable if it can be called // as a function. // Declare the function function Function_xyz() { } $variable_name = "Function_xyz"; var_dump(is_callable($variable_name, false, $callable_name)); echo $callable_name, "\n"; // using only-one parameter var_dump(is_callable($variable_name)); ?>
bool(true) Function_xyz bool(true)
Programa 2: Array contiene un método
<?php // To check a variable if it can be called // as a function. // Define class class ClassA { // Define method function Method_xyz() { } } // Object instance $obj = new ClassA(); $variable_name = array($obj, 'Method_xyz'); var_dump(is_callable($variable_name, true, $callable_name)); echo $callable_name, "\n"; ?>
bool(true) ClassA::Method_xyz
Referencia: http://php.net/manual/en/function.is-callable.php
Publicación traducida automáticamente
Artículo escrito por Mithun Kumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA