Maison >développement back-end >tutoriel php >Comment utiliser la fonction php call_user_func

Comment utiliser la fonction php call_user_func

小云云
小云云original
2018-03-14 10:53:015381parcourir

J'ai parcouru la documentation il y a quelque temps et j'ai trouvé une fonction PHP intéressante : call_user_func. Cet article vous explique principalement comment utiliser la fonction PHP call_user_func. J'espère qu'il pourra vous aider.

Fonction : Cette fonction est principalement utilisée pour appeler la fonction via

nom de la fonction

Par exemple :

function test(){
    echo "hello world\n";
}
$methodName = "test";
call_user_func($methodName);
上面的语句执行后相当于直接调用test(),不过是可以通过函数名来调用函数。同时也可以用这种方法来调用:
1
2
$methodName = "test";
$methodName();
Les résultats produits sont les mêmes et cette méthode sera légèrement plus performante que la méthode ci-dessus.

En plus d'appeler des fonctions, vous pouvez également appeler des méthodes objet :

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"));
L'effet d'exécution ci-dessus est le même

call_user_func peut également être utilisé avec des fonctions anonymes telles que comme :

function call_func(){
    foreach(func_get_args() as $func){
        call_user_func($func);
    }
}
call_func(function(){
    echo "anonymous function\n";
});
La fonction ci-dessus peut également appeler plusieurs fonctions en même temps.

Recommandations associées :

Explication détaillée des exemples d'utilisation des fonctions php call_user_func et call_user_func_array

Résumé de la définition et de l'utilisation de la fonction call_user_func_array()

Fonction php call_user_func

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn