Accéder aux variables externes dans les fonctions
En PHP, les variables au sein des fonctions ont leur propre portée, distincte de la portée globale. Cependant, il est possible d'accorder aux fonctions l'accès à des variables externes à l'aide de techniques spécifiques.
Utilisation de variables globales
L'approche la plus simple consiste à déclarer une variable externe comme globale au sein de la fonction en utilisant le mot-clé global. Cela donne à la fonction un accès direct à cette variable.
function someFunction() { global $myArr; $myVal = //some processing here to determine value of $myVal $myArr[] = $myVal; }
Inconvénients de l'utilisation de variables globales :
Bien que le mot-clé global permette un accès facile, il introduit un couplage global, rendre la fonction dépendante de la variable externe. Cela peut conduire à un code plus difficile à maintenir et à tester.
Approches alternatives :
Il existe de meilleures pratiques pour permettre aux fonctions de modifier des variables externes sans utiliser de variables globales.
Renvoi des résultats :
Une fonction peut renvoyer le résultat de ses manipulations sur l'interface externe variable en tant que nouvelle variable.
function someFunction() { $myArr = array(); // At first, you have an empty array $myVal = //some processing here to determine value of $myVal $myArr[] = $myVal; // Put that $myVal into the array return $myArr; }
Passer des paramètres par référence :
Une autre technique consiste à transmettre la variable externe en tant que paramètre par référence à l'aide du symbole &. Cela permet à la fonction de modifier directement la variable d'origine.
function someFunction(array &$myArr) { $myVal = //some processing here to determine value of $myVal $myArr[] = $myVal; // Put that $myVal into the array }
Avantages des approches alternatives :
Ces approches alternatives garantissent que la fonction fonctionne indépendamment de tout contexte externe. , ce qui facilite le test et la réutilisation.
Ressources supplémentaires :
Pour plus d'informations, reportez-vous aux sections du manuel PHP sur :
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!