Position actuelle: Accueil> Derniers articles> Comment passer les variables PHP par référence et modifier la valeur d'origine

Comment passer les variables PHP par référence et modifier la valeur d'origine

M66 2025-06-15

Comment passer les variables PHP par référence et modifier la valeur d'origine

Dans PHP, vous pouvez utiliser le symbole & symbole (&) pour passer les variables par référence plutôt que par valeur. Cela permet de modifier la valeur de la variable d'origine directement dans une fonction ou une méthode. PHP fournit deux façons d'implémenter les variables de passage par référence:

  • En utilisant et en symboles dans la déclaration de fonction / méthode
  • Passer les variables et utiliser le symbole de somme lors de l'appel d'une fonction

Passer des références en utilisant et des symboles dans les déclarations de fonction / méthode

Dans PHP, vous pouvez transmettre des variables par référence par préfixe par le paramètre d'une fonction ou d'une méthode. Cela signifie que la variable que vous souhaitez passer peut être modifiée dans la fonction, affectant directement la valeur de la variable d'origine. Voici un exemple simple:

  
fonction modifyValue (& $ variable) {  
    $ variable + = 10;  
}  

$ myvariable = 5;  
ModifyValue ($ myvariable);  
echo $ myvariable; // Sortie: 15  

Dans le code ci-dessus, la fonction ModifyValue accepte un paramètre passé dans la variable & symbole $ . Lorsque la fonction est appelée et $ myvariable est transmis, la variable d'origine sera transmise par référence, de sorte que les modifications à l'intérieur de la fonction affecteront directement la valeur de $ myvariable .

En utilisant le & symbole dans une déclaration de fonction, vous pouvez explicitement spécifier que les variables sont transmises par référence, ce qui évite de modifier accidentellement la valeur de la variable d'origine.

Passer des variables de référence lors de l'appel d'une fonction

En plus d'utiliser les déclarations de fonctions & symboles, vous pouvez également transmettre explicitement les références aux variables lorsqu'elles sont appelées. Mais il convient de noter que l'ajout du & symbole uniquement lorsque l'appel ne changera pas réellement la méthode de livraison. Dans certains cas, cela peut entraîner des erreurs de syntaxe ou un comportement pire que prévu.

  
fonction modifyValue ($ variable) {  
    $ variable + = 10;  
}  

$ myvariable = 5;  
ModifyValue (& $ myvariable);  
echo $ myvariable; // Sortie: 5  

Dans l'exemple ci-dessus, la fonction ModifyValue n'est pas définie à l'aide du & symbole. Par conséquent, peu importe si le & symbole est utilisé lors de l'appel de la fonction, $ myvariable est toujours passé par valeur et les modifications à l'intérieur de la fonction n'affecteront pas la variable d'origine.

en conclusion

En PHP, le passage de référence peut être implémenté en utilisant le & symbole dans les déclarations de fonction pour s'assurer que les variables peuvent être modifiées à l'intérieur de la fonction. Au contraire, l'utilisation du & symbole uniquement lorsqu'une fonction est appelée n'implémente pas la référence. La compréhension et l'utilisation correctement des passes de référence peuvent vous aider à mieux contrôler la portée des variables, évitant ainsi la modification accidentelle des données d'origine.