Hàm is_callable
Hàm is_callable kiểm tra xem giá trị được truyền vào có thể gọi như một hàm hay không.
Nó trả về true nếu giá trị là:
- tên hàm dưới dạng chuỗi
- mảng chứa đối tượng và tên phương thức
- đối tượng có phương thức
__invoke - hàm ẩn danh
Cú pháp
is_callable(
mixed $value,
bool $syntax_only = false,
string &$callable_name = null
): bool
Ví dụ
Kiểm tra hàm thông thường:
<?php
function test() {}
$res = is_callable('test');
var_dump($res);
?>
Kết quả thực thi mã:
true
Ví dụ
Kiểm tra phương thức lớp:
<?php
class MyClass {
public function method() {}
}
$obj = new MyClass();
$res = is_callable([$obj, 'method']);
var_dump($res);
?>
Kết quả thực thi mã:
true
Ví dụ
Kiểm tra hàm không tồn tại:
<?php
$res = is_callable('non_existent_function');
var_dump($res);
?>
Kết quả thực thi mã:
false
Ví dụ
Kiểm tra đối tượng có __invoke:
<?php
class Invokable {
public function __invoke() {}
}
$obj = new Invokable();
$res = is_callable($obj);
var_dump($res);
?>
Kết quả thực thi mã:
true
Xem thêm
-
hàm
function_exists,
hàm kiểm tra sự tồn tại của một hàm -
hàm
method_exists,
hàm kiểm tra sự tồn tại của một phương thức lớp