首頁  >  文章  >  後端開發  >  php函數call_user_func的使用方法

php函數call_user_func的使用方法

小云云
小云云原創
2018-03-14 10:53:015192瀏覽

前陣子瀏覽文件發現一個有趣的PHP函數:call_user_func ,這篇文章主要跟大家分享php函式call_user_func的使用方法,希望能幫助大家。

函數作用:函數主要用於透過函數名稱呼叫該函數

例如:

function test(){
    echo "hello world\n";
}
$methodName = "test";
call_user_func($methodName);
上面的语句执行后相当于直接调用test(),不过是可以通过函数名来调用函数。同时也可以用这种方法来调用:
1
2
$methodName = "test";
$methodName();

產生的結果是一樣的,而且這種方法在性能上會比上面的方法好一點。

除了呼叫函數,還可以呼叫物件的方法:

class T{
    static public function test(){
        echo "hello world\n";
    }
}
//php 5.3以前需要这样调用
call_user_func("T::test");
//php 5.3以后,可以将class和method传入一个数组再将数组传给call_user_func方法
call_user_func(array("T", "test"));

上面執行效果是一樣的

call_user_func還可以與匿名函數配合如:

function call_func(){
    foreach(func_get_args() as $func){
        call_user_func($func);
    }
}
call_func(function(){
    echo "anonymous function\n";
});

上面的函數還能同時呼叫多個函數。

相關推薦:

php函數call_user_func與call_user_func_array用法實例詳解

call_user_func_array()函式定義與用法匯總

############## ########php call_user_func函數#######

以上是php函數call_user_func的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn