當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP is_callable()用法及代碼示例


is_callable()函數是PHP中的內置函數,用於驗證變量的內容可以稱為函數。它可以檢查簡單變量是否包含有效函數的名稱,或者數組是否包含正確編碼的對象和函數名稱。

用法:

bool is_callable ( $variable_name, $syntax_only, $callable_name )

參數:is_callable()函數接受三個參數,如上麵的語法所示,並在下麵進行描述。取決於用戶使用一個,兩個或三個參數。


  • $variable_name:存儲在字符串變量$variable_name中的函數的名稱或對象,以及該對象內的方法的名稱。
  • $syntax_only:如果設置為TRUE,則該函數僅驗證該名稱可能是函數或方法。它將拒絕不是字符串的簡單變量,或者不具有有效結構的數組以用作回調。有效條目應該隻有2個條目,第一個條目是對象或字符串,第二個條目是字符串。
  • $callable_name:接收可調用名稱。此選項僅針對類實現。

返回值:該函數返回一個布爾類型值。如果$variable_name是可調用的,則返回TRUE,否則返回FALSE。

以下示例程序旨在說明PHP中的is_callable()函數:
程序1:簡單變量包含一個函數

<?php 
// To check a variable if it can be called 
// as a function. 
  
// Declare the function 
function Function_xyz()  
{ 
} 
  
$variable_name = "Function_xyz"; 
var_dump(is_callable($variable_name, false, $callable_name)); 
echo $callable_name, "\n"; 
  
// using only-one parameter 
var_dump(is_callable($variable_name)); 
?>
輸出:
bool(true)
Function_xyz
bool(true)

程序2:數組包含一個方法

<?php 
// To check a variable if it can be called 
// as a function. 
  
// Define class 
class ClassA { 
   // Define method 
  function Method_xyz()  
  { 
  } 
  
} 
  
// Object instance 
$obj = new ClassA(); 
  
$variable_name = array($obj, 'Method_xyz'); 
  
var_dump(is_callable($variable_name, true, $callable_name));   
echo $callable_name, "\n";   
?>
輸出:
bool(true)
ClassA::Method_xyz

參考: http://php.net/manual/en/function.is-callable.php



相關用法


注:本文由純淨天空篩選整理自Mithun Kumar大神的英文原創作品 PHP | is_callable() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。