檢測參數是否為合法的可呼叫結構

is_callable

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

is_callable 檢測參數是否為合法的可呼叫結構

說明

is_callable(callable $name, bool $syntax_only = false, string &$callable_name = ?): bool

驗證變數的內容能否作為函式呼叫。 這可以檢查包含有效函式名的變數,或者一個陣列,包含了正確編碼的對象以及函式名。

參數

name

要檢查的回撥函式。

syntax_only

如果設定為 true,這個函式僅僅驗證 name 可能是函式或方法。 它僅僅拒絕非字元,或者未包含能用於回撥函式的有效結構。有效的應該包含兩個元素,第一個是一個對像或者字元,第二個元素是個字元。

callable_name

接受「可呼叫的名稱」。下面的例子是「someClass::someMethod」。 注意,儘管 someClass::SomeMethod() 的含義是可呼叫的靜態方法,但例子的情況並不是這樣的。

返回值

如果 name 可呼叫則返回 true,否則返回 false

範例

示例 #1 is_callable() 例子

<?php
//  How to check a variable to see if it can be called
//  as a function.

//
//  Simple variable containing a function
//

function someFunction() 
{
}

$functionVariable 'someFunction';

var_dump(is_callable($functionVariablefalse$callable_name));  // bool(true)

echo $callable_name"\n";  // someFunction

//
//  Array containing a method
//

class someClass {

  function 
someMethod() 
  {
  }

}

$anObject = new someClass();

$methodVariable = array($anObject'someMethod');

var_dump(is_callable($methodVariabletrue$callable_name));  //  bool(true)

echo $callable_name"\n";  //  someClass::someMethod

?>

參見

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *