Maison > développement back-end > tutoriel php > Explication détaillée de la façon d'appeler des instances de fonctions définies par l'utilisateur en PHP

Explication détaillée de la façon d'appeler des instances de fonctions définies par l'utilisateur en PHP

伊谢尔伦
Libérer: 2023-03-11 12:50:01
original
1456 Les gens l'ont consulté

Ce qui suit est une analyse détaillée et une introduction à la méthode d'appel des fonctions définies par l'utilisateur en PHP Les amis qui en ont besoin peuvent venir s'y référer

Mettons. un exemple d'abord :
La fonction call_user_func est similaire à une méthode spéciale d'appel d'une fonction. La méthode d'utilisation est la suivante : >, je ne sais pas ce que les développeurs en pensent. est omis, ce qui est également plein de nouveauté :

function a($b,$c)    
{    
echo $b;    
echo $c;    
}    
call_user_func('a', "111","222");    
call_user_func('a', "333","444");    
//显示 111 222 333 444
Copier après la connexion

La fonction call_user_func_array est très similaire à call_user_func, sauf que les paramètres sont passés d'une manière différente , ce qui rend la structure des paramètres plus claire :

La fonction call_user_func_array peut également appeler des méthodes à l'intérieur de la classe
class
 a {    
function b($c)    
{    
echo $c;    
}    
}    
call_user_func(array("a", "b"),"111");    
//显示 111
Copier après la connexion

La fonction call_user_func et la fonction call_user_func_array prennent en charge les
function a($b, $c)    
{    
echo $b;    
echo $c;    
}    
call_user_func_array('a', array("111", "222"));    
//显示 111 222
Copier après la connexion
références

, ce qui les rend plus fonctionnellement cohérentes avec la fonction ordinaire appels :

Class ClassA    
{    
function bc($b, $c) {    
     $bc = $b + $c;    
echo $bc;    
}    
}    
call_user_func_array(array('ClassA','bc'), array("111", "222"));    
//显示 333
Copier après la connexion

Également : la fonction call_user_func et la fonction call_user_func_array prennent en charge les références.

function a($b)    
{    
$b++;    
}    
$c = 0;    
call_user_func('a', $c);    
echo $c;//显示 1    
call_user_func_array('a', array($c));    
echo $c;//显示 2
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal