Функсияи 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,
ки вуҷуд доштани методи синфро тафтиш мекунад