Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie die PHP-Funktion call_user_func

So verwenden Sie die PHP-Funktion call_user_func

小云云
小云云Original
2018-03-14 10:53:015350Durchsuche

Ich habe vor einiger Zeit die Dokumentation durchgesehen und eine interessante PHP-Funktion gefunden: call_user_func. In diesem Artikel erfahren Sie hauptsächlich, wie Sie die PHP-Funktion call_user_func verwenden.

Funktion: Diese Funktion wird hauptsächlich verwendet, um die Funktion über

Funktionsname

aufzurufen. Zum Beispiel:

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

Die erzielten Ergebnisse sind die gleichen und diese Methode ist etwas leistungsfähiger als die obige Methode.

Zusätzlich zum Aufrufen von Funktionen können Sie auch Objektmethoden aufrufen:

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"));

Der obige Ausführungseffekt ist derselbe

call_user_func kann auch mit anonymen Funktionen wie verwendet werden als:

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

Die obige Funktion kann auch mehrere Funktionen gleichzeitig aufrufen.

Verwandte Empfehlungen:

Detaillierte Erläuterung der Anwendungsbeispiele der PHP-Funktionen call_user_func und call_user_func_array

Zusammenfassung der Definition und Verwendung der Funktion call_user_func_array()

php call_user_func-Funktion

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die PHP-Funktion call_user_func. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn