Функция is_callable
Функцията is_callable проверява дали предадената стойност може да бъде извикана като функция.
Тя връща true, ако стойността е:
- име на функция във вид на низ
- масив с обект и име на метод
- обект с метод
__invoke - анонимна функция
Синтаксис
is_callable(
mixed $value,
bool $syntax_only = false,
string &$callable_name = null
): bool
Пример
Проверка на обикновена функция:
<?php
function test() {}
$res = is_callable('test');
var_dump($res);
?>
Резултат от изпълнението на кода:
true
Пример
Проверка на метод на клас:
<?php
class MyClass {
public function method() {}
}
$obj = new MyClass();
$res = is_callable([$obj, 'method']);
var_dump($res);
?>
Резултат от изпълнението на кода:
true
Пример
Проверка на несъществуваща функция:
<?php
$res = is_callable('non_existent_function');
var_dump($res);
?>
Резултат от изпълнението на кода:
false
Пример
Проверка на обект с __invoke:
<?php
class Invokable {
public function __invoke() {}
}
$obj = new Invokable();
$res = is_callable($obj);
var_dump($res);
?>
Резултат от изпълнението на кода:
true
Вижте също
-
функцията
function_exists,
която проверява съществуването на функция -
функцията
method_exists,
която проверява съществуването на метод на клас