is_callable() 函数用于检测函数在当前环境中是否可调用。
is_callable() 函数验证变量的内容能否作为函数调用。 这可以检查包含有效函数名的变量,或者一个数组,包含了正确编码的对象以及函数名。
PHP 版本要求:PHP 4 >= 4.0.6, PHP 5, PHP 7
语法
bool is_callable ( callable $name [, bool $syntax_only = false [, string &$callable_name ]] )
参数说明:
- $name:要检查的回调函数。
- $syntax_only:如果设置为 TRUE,这个函数仅仅验证 name 可能是函数或方法。 它仅仅拒绝非字符,或者未包含能用于回调函数的有效结构。有效的应该包含两个元素,第一个是一个对象或者字符,第二个元素是个字符。
- $callable_name:接受"可调用的名称"。
返回值
如果 name 可调用则返回 TRUE,否则返回 FALSE。。
实例
实例
//
检测变量是否为可调用的函数
function
someFunction
(
)
{
}
$functionVariable
=
'
someFunction
'
;
var_dump
(
is_callable
(
$functionVariable
,
false
,
$callable_name
)
)
;
//
bool(true)
echo
$callable_name
,
"
\n
"
;
//
someFunction
//
//
数组中包含方法
//
class
someClass
{
function
someMethod
(
)
{
}
}
$anObject
=
new
someClass
(
)
;
$methodVariable
=
array
(
$anObject
,
'
someMethod
'
)
;
var_dump
(
is_callable
(
$methodVariable
,
true
,
$callable_name
)
)
;
//
bool(true)
echo
$callable_name
,
"
\n
"
;
//
someClass::someMethod
输出结果为:
bool(true) someFunction bool(true) someClass::someMethod