Funcția is_callable
Funcția is_callable verifică dacă valoarea transmisă poate fi apelată ca funcție.
Ea returnează true dacă valoarea este:
- numele unei funcții sub formă de șir de caractere
- matrice cu un obiect și numele metodei
- obiect cu metoda
__invoke - funcție anonimă
Sintaxă
is_callable(
mixed $value,
bool $syntax_only = false,
string &$callable_name = null
): bool
Exemplu
Verificarea unei funcții obișnuite:
<?php
function test() {}
$res = is_callable('test');
var_dump($res);
?>
Rezultatul executării codului:
true
Exemplu
Verificarea unei metode de clasă:
<?php
class MyClass {
public function method() {}
}
$obj = new MyClass();
$res = is_callable([$obj, 'method']);
var_dump($res);
?>
Rezultatul executării codului:
true
Exemplu
Verificarea unei funcții inexistente:
<?php
$res = is_callable('non_existent_function');
var_dump($res);
?>
Rezultatul executării codului:
false
Exemplu
Verificarea unui obiect cu __invoke:
<?php
class Invokable {
public function __invoke() {}
}
$obj = new Invokable();
$res = is_callable($obj);
var_dump($res);
?>
Rezultatul executării codului:
true
Vedeți și
-
funcția
function_exists,
care verifică existența unei funcții -
funcția
method_exists,
care verifică existența unei metode de clasă