Pour les programmeurs PHP, à mesure que différentes versions de PHP mettent à jour et améliorent certains mécanismes de variables de fonction, cela provoque souvent une confusion lorsque l'utilisation de la même variable dans différentes versions produit des résultats différents. Cet article vous explique donc principalement en détail pourquoi des résultats différents se produisent lors de l'utilisation de la même variable globale sous les versions PHP5 et PHP7 ? Laissez-moi vous donner un exemple simple et facile à comprendre.
Par exemple, le code d'opération de la page exl.php existant est le suivant :
Le résultat que nous avons exécuté dans l'environnement de la version php5 locale est 5, comme montré dans la capture d'écran ci-dessous :
Ensuite, le résultat lorsque nous l'exécutons dans l'environnement de la version php7 est 3, comme indiqué dans la capture d'écran ci-dessous :
Alors pourquoi Différents résultats d'opération apparaîtront. C'est en fait parce que dans la dernière version de php7, le mécanisme de traitement des variables globales PHP a été modifié. Dans cette version, le mot-clé global ne peut désormais faire référence qu'à des variables simples. . Ainsi, lorsque nous opérons dans l'environnement de la version locale de php5, la valeur de sortie de $y est $x+$y=5. À l'heure actuelle, global équivaut à l'utilisation de variables globales. Dans l'environnement php7, la valeur de sortie de $y est $y=3 Pour le moment, la variable globale ne peut référencer directement que la variable simple $y.
Ainsi, grâce à l'exemple d'explication de code ci-dessus, j'espère que cet article sur le problème des variables globales en PHP produisant des résultats différents lors du fonctionnement dans différentes versions sera utile à tout le monde lorsqu'il rencontre des problèmes connexes. J'espère également que tout le monde pourra le faire. passez ceci Cet article fournit une compréhension de l'utilisation de php global sous différentes versions.
【Articles connexes recommandés】
Pourquoi les variables globales sont-elles invalides ou erronées ?
Quelques compréhensions différentes de global et $GLOBAL['']
Mot-clé global dans l'analyse du code source PHP