Maison  >  Article  >  développement back-end  >  Comment appeler une méthode via une variable en php

Comment appeler une méthode via une variable en php

PHPz
PHPzoriginal
2023-04-12 13:56:211038parcourir

PHP est un langage de programmation de haut niveau largement utilisé dans le domaine du développement web. En PHP, les variables peuvent être utilisées pour représenter des fonctions ou des méthodes, et ces fonctions ou méthodes peuvent être appelées via des noms de variables. Cet article explique comment appeler des méthodes en PHP via des variables.

1. Utiliser des fonctions variables

En PHP, vous pouvez utiliser des fonctions variables pour appeler une fonction déjà définie. Une fonction variadique est en fait une variable qui fait référence au nom de la fonction. Lorsque la variable est appelée, la fonction référencée est exécutée. Voici un exemple de code utilisant une fonction variable :

function add($a, $b) {
    return ($a + $b);
}

$function_name = 'add';
$result = $function_name(10, 20);
echo $result; // 输出30

Dans le code ci-dessus, une fonction d'ajout est définie, qui renvoie la somme de deux paramètres. Ensuite, le nom de la fonction add est attribué à la variable $function_name, puis la fonction add est appelée via cette variable et le résultat est stocké dans la variable $result.

2. Utiliser des méthodes variables

En plus des fonctions variables, PHP prend également en charge l'appel de méthodes variables. Les méthodes variables sont très similaires aux fonctions variables, toutes deux utilisent une chaîne de noms de méthodes au lieu des noms de méthodes réels. Voici un exemple de code utilisant des méthodes variables :

class Calculator {
    public function add($a, $b) {
        return ($a + $b);
    }

    public function sub($a, $b) {
        return ($a - $b);
    }
}

$calc = new Calculator();
$method_name = 'add';
$result = $calc->$method_name(10, 20);
echo $result; // 输出30

Dans l'exemple ci-dessus, une classe Calculator est définie, qui contient deux méthodes publiques add et sub. Ensuite, un objet Calculatrice est créé et le nom de la méthode add est attribué à la variable $method_name. Ensuite, la méthode add est appelée via la syntaxe $calc->$method_name et le résultat est stocké dans la variable $result. Il convient de noter que le ->$ dans la syntaxe $calc->$method_name indique le membre de l'objet appelant (c'est-à-dire la méthode), suivi de près par le nom de la méthode.

3. Utiliser la fonction de rappel

PHP prend également en charge la méthode d'appel de la fonction de rappel. Une fonction de rappel est un type spécial de fonction qui peut être transmise en tant que paramètre à d'autres fonctions, et peut également être enregistrée et appelée en tant que variable. Voici un exemple de code utilisant une fonction de rappel :

function add($a, $b) {
    return ($a + $b);
}

function sub($a, $b) {
    return ($a - $b);
}

function calculate($callback, $a, $b) {
    return $callback($a, $b);
}

$method_name = 'add';
$result = calculate($method_name, 10, 20);
echo $result; // 输出30

Dans l'exemple ci-dessus, deux fonctions add et sub sont définies, qui implémentent respectivement les opérations d'addition et de soustraction. Ensuite, une fonction de calcul calculate est définie, qui accepte trois paramètres. Le premier paramètre $callback représente le nom de la fonction de rappel ou le nom de la variable, et les deuxième et troisième paramètres représentent respectivement les deux opérandes. Dans la fonction calculate, la fonction add ou sub est appelée via la fonction de rappel $callback pour obtenir le résultat final du calcul.

Il est très pratique d'utiliser des variables pour appeler des méthodes en PHP, ce qui peut grandement améliorer la réutilisabilité et la lisibilité du code. Les développeurs peuvent choisir la méthode correspondante pour implémenter la fonction d'appel de variable en fonction de leurs propres besoins.

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