Funkcija is_callable
Funkcija is_callable patikrina, ar perduotą reikšmę galima iškviesti kaip funkciją.
Ji grąžina true, jei reikšmė yra:
- funkcijos pavadinimas eilutės pavidalu
- masyvas su objektu ir metodo pavadinimu
- objektas su metodu
__invoke - anoniminė funkcija
Sintaksė
is_callable(
mixed $value,
bool $syntax_only = false,
string &$callable_name = null
): bool
Pavyzdys
Įprastinės funkcijos patikrinimas:
<?php
function test() {}
$res = is_callable('test');
var_dump($res);
?>
Kodo vykdymo rezultatas:
true
Pavyzdys
Klasės metodo patikrinimas:
<?php
class MyClass {
public function method() {}
}
$obj = new MyClass();
$res = is_callable([$obj, 'method']);
var_dump($res);
?>
Kodo vykdymo rezultatas:
true
Pavyzdys
Neeegzistuojančios funkcijos patikrinimas:
<?php
$res = is_callable('non_existent_function');
var_dump($res);
?>
Kodo vykdymo rezultatas:
false
Pavyzdys
Objekto su __invoke patikrinimas:
<?php
class Invokable {
public function __invoke() {}
}
$obj = new Invokable();
$res = is_callable($obj);
var_dump($res);
?>
Kodo vykdymo rezultatas:
true
Taip pat žiūrėkite
-
funkciją
function_exists,
kuri patikrina funkcijos egzistavimą -
funkciją
method_exists,
kuri patikrina klasės metodo egzistavimą