Fonction de rappel de fonction personnalisée PHP
La fonction de rappel peut être utilisée avec des fonctions anonymes et des fonctions variables pour obtenir une structure de fonctions plus belle et plus complexe.
La fonction de rappel signifie que lors du traitement d'une fonction, je souhaite rendre cette fonction plus personnalisable. Lorsque j'autorise l'appel de cette fonction, je peux également transmettre une fonction correspondante. , aider au traitement.
Ceci est un chapitre qui combine les fonctions variables et les fonctions de rappel.
<?php function woziji($one,$two,$func){ //我规定:检查$func是否是函数,如果不是函数停止执行本段代码,返回false if(!is_callable($func)){ return false; } //我把$one、$two相加,再把$one和$two传入$func这个函数中处理一次 //$func是一个变量函数,参见变量函数这一章 echo $one + $two + $func($one,$two); } //我们定义几个函数试试 function plusx2( $foo , $bar){ $result = ($foo+$bar)*2; return $result; } function jian( $x , $y ){ $result = $x - $y; return $result; } //调用一下函数,woziji,向里面传入参数试试 echo woziji(20,10,'plusx2'); //将plusx2改成jian试试结果 echo woziji(20,10,'jian'); ?>
Le processus de traitement est le suivant :
1. Attribuez 20 au paramètre formel $one, 10 à $two, et les deux fonctions variables plusx2 ou jian sont affectées à $func
2. Dans la fonction woziji, déterminez si plusx2 ou jian est une fonction. Si ce n'est pas une fonction, retournez false et arrêtez l'exécution
3. Montrez que plusx2 ou jian est une fonction. Par conséquent, $one = 20, $two =10 sont ajoutés. Après l'ajout, $one et $two sont introduits dans $func($one,$two).
4. Après l'avoir introduit à l'intérieur, $func est variable et peut être plusx2 ou jian. Si c'est plusx2, les deux résultats de $one = 20, $two = 10 sont donnés à $foo et $bar
dans la fonction plusx2 5. $foo + $bar est multiplié par 2 et le. le résultat est Retour à l'opération du corps de fonction de woziji : $one + $two + $func($one,$two);
6. De cette façon, nous obtenons le résultat de l'opération
Maintenant, nous comprenons la fonction de rappel : dans un rappel, transmettez un nom de fonction et ajoutez des crochets () au nom de la fonction. Reconnaissez-la comme une fonction variable et exécutez-la ensemble.