Maison >développement back-end >tutoriel php >Comment puis-je appeler dynamiquement des fonctions et des méthodes en programmation ?
En programmation, il est souvent utile de pouvoir appeler une fonction en fonction de son nom stocké dans une variable. Cette technique permet une plus grande flexibilité et une réutilisation du code.
Pour appeler une fonction à partir d'une variable, vous pouvez utiliser l'une des méthodes suivantes :
1. Appel de fonction direct :
Attribuez le nom de la fonction à une variable à l'aide de guillemets simples ou doubles (par exemple, $functionName = "foo"), puis appelez la fonction directement à l'aide de la variable (par exemple, $functionName( )).
2. call_user_func() :
La fonction call_user_func() prend un nom de fonction stocké dans une variable comme premier argument et tous les paramètres nécessaires comme arguments suivants.
Exemple :
function foo() { // Code } function bar() { // Code } $functionName = "foo"; // Call the function using direct function call $functionName(); // Call the function using call_user_func() call_user_func($functionName);
À passez les paramètres stockés dans un tableau de variables, utilisez l'opérateur de décompression de tableau (...) :
$function_name = 'trim'; $parameters = ['aaabbb', 'b']; echo $function_name(...$parameters); // aaa
Pour créer dynamiquement un objet et appeler sa méthode, utilisez la syntaxe suivante :
$class = 'DateTime'; $method = 'format'; echo (new $class)->$method('d-m-Y');
Pour les méthodes statiques :
$class = 'DateTime'; $static = 'createFromFormat'; $date = $class::$static('d-m-Y', '17-08-2023');
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!