PHP5 plus introduit $GLOBALS concept d'initialisation de retard

Source : Internet
Auteur : utilisateur
Aujourd'hui, nous utilisons $GLOBALS, #39 et #39. Pour remplacer $SSERVER d'accéder aux variables d'environnement pertinentes, signalera toujours l'erreur de sSERVERundefined. Le cas d'utilisation suivant : Utilisez le cas 1 : phpprint?r ($GLOBALS); il n'y a aucune information sur sSERVER dans la sortie en ce moment: Array..."

Aujourd'hui, en utilisant $GLOBALS ('SERVER') au lieu de $?SERVER pour accéder aux variables d'environnement pertinentes, vous signalerez toujours l'erreur "SSERVER indéfinie". Voici comment :

Utilisez le cas 1 :
imprimer ($GLOBALS);
À ce stade, il n'y a aucune information sur SERVER dans la sortie:
collection
(
GLOBALS , Array
:: RÉCURSION
(POST) s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/
(
)
S.
(
)
COOKIES , TABLEAU
(
)
Tableau (FILE)
(
)
)


Utilisez le cas 2 :
imprimer ($GLOBALS);
imprimer-r ('SERVER);
À ce stade, la sortie contient des informations sur le sSERVER:
collection
(
GLOBALS , Array
:: RÉCURSION
(POST) s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/s/
(
)
S.
(
)
COOKIES , TABLEAU
(
)
Tableau (FILE)
(
)
(SERVER) smh.com.au
(
)
)
Consultez le manuel PHP pour la description $GLOBALS, citant le satandshow examen à gmail dot com:
Therandshow à gmail dot com
À partir de PHP 5.4 $GLOBALS est maintenant initialisé juste-à-temps. Ce que ce là c'est un avantage de ne pas utiliser
le $GLOBALS que vous pouvez peut le surcharge des initiales il. Quel est l'avantage est
Je ne suis pas sûr, mais je n'ai jamais aimé $GLOBALS beaucoup de toute façon.
Après la source du nombre root, trouvez la description du journal de mise à jour PHP5Changelog :
Liste non ordonnée Amélioration du moteur Zend, réglages des performances et optimisations
Liste non ordonnée ItemChange $GLOBALS dans un autoglobal JIT, de sorte qu'il est initialisé que si elle est utilisée. (Cela peut affecter les caches opcode!) www.2cto.com
718 ; Lorsqu'elles sont activées, les variables SERVER et ENV sont créées
719 ; Le juste dans le temps au lieu de quand le script commence. Si ces variables
720 ; Ne sont pas edin edin un script, ont cette volonté volonté sera sera dans un
721 ; performance. Les directives PHP enregistrent les « globals », les registres, les
722 ; Et les registres sargc'argv doivent être désactivés pour que cette directive ait un quelconque effet.
723 ; http://php.net/auto-globals-jit
724 auto-globals-jit-On
Il a finalement été compris que la variable $SERVER et la variable $?ENV ne sont pas créées au moment où le script commence, mais ne seront pas créées la première fois que vous utilisez $SERVER et $ENV dans le cas de l'auto-globals-jit-On. Il y a donc deux cas d'utilisation.


note:
Les résultats du test:
les paramètres auto-globals-jit affectent également $.REQUEST superglobal en 5.3 Il n'est pas explicitement dans la documentation.
Au moins 5.3.13 versions sont des eduths ouverts d'auto-globals-jit-On-On-$REQUEST ne seront créés que la première fois qu'ils sont utilisés.

Nous contacter

Le contenu de cette page provient d'Internet et ne reflète pas l'opinion d'Alibaba Cloud ; les produits et services mentionnés sur cette page n'ont aucune relation avec Alibaba Cloud. Si le contenu de la page vous semble problématique, veuillez nous écrire un courriel, nous traiterons le problème dans les 5 jours suivant la réception de votre message.

Si vous constatez des cas de plagiat de la part de la communauté, veuillez envoyer un courriel à : info-contact@alibabacloud.com et fournir des preuves pertinentes. Un membre de notre équipe vous contactera dans les 5 jours ouvrables.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.