Fonction is_callable
La fonction is_callable vérifie si la valeur transmise peut être appelée comme une fonction.
Elle renvoie true si la valeur est :
- le nom d'une fonction sous forme de chaîne de caractères
- un tableau contenant un objet et un nom de méthode
- un objet avec la méthode
__invoke - une fonction anonyme
Syntaxe
is_callable(
mixed $value,
bool $syntax_only = false,
string &$callable_name = null
): bool
Exemple
Vérification d'une fonction ordinaire :
<?php
function test() {}
$res = is_callable('test');
var_dump($res);
?>
Résultat de l'exécution du code :
true
Exemple
Vérification d'une méthode de classe :
<?php
class MyClass {
public function method() {}
}
$obj = new MyClass();
$res = is_callable([$obj, 'method']);
var_dump($res);
?>
Résultat de l'exécution du code :
true
Exemple
Vérification d'une fonction inexistante :
<?php
$res = is_callable('non_existent_function');
var_dump($res);
?>
Résultat de l'exécution du code :
false
Exemple
Vérification d'un objet avec __invoke :
<?php
class Invokable {
public function __invoke() {}
}
$obj = new Invokable();
$res = is_callable($obj);
var_dump($res);
?>
Résultat de l'exécution du code :
true
Voir aussi
-
la fonction
function_exists,
qui vérifie l'existence d'une fonction -
la fonction
method_exists,
qui vérifie l'existence d'une méthode de classe