Funzione is_callable
La funzione is_callable verifica se è possibile chiamare il valore passato come funzione.
Restituisce true se il valore è:
- il nome di una funzione sotto forma di stringa
- un array con un oggetto e il nome di un metodo
- un oggetto con il metodo
__invoke - una funzione anonima
Sintassi
is_callable(
mixed $value,
bool $syntax_only = false,
string &$callable_name = null
): bool
Esempio
Verifica di una funzione ordinaria:
<?php
function test() {}
$res = is_callable('test');
var_dump($res);
?>
Risultato dell'esecuzione del codice:
true
Esempio
Verifica di un metodo di classe:
<?php
class MyClass {
public function method() {}
}
$obj = new MyClass();
$res = is_callable([$obj, 'method']);
var_dump($res);
?>
Risultato dell'esecuzione del codice:
true
Esempio
Verifica di una funzione inesistente:
<?php
$res = is_callable('non_existent_function');
var_dump($res);
?>
Risultato dell'esecuzione del codice:
false
Esempio
Verifica di un oggetto con __invoke:
<?php
class Invokable {
public function __invoke() {}
}
$obj = new Invokable();
$res = is_callable($obj);
var_dump($res);
?>
Risultato dell'esecuzione del codice:
true
Vedi anche
-
la funzione
function_exists,
che verifica l'esistenza di una funzione -
la funzione
method_exists,
che verifica l'esistenza di un metodo di classe