Utilisation des variables static <<< |
Les références avec les variables global et static | Les variables >>> |
4.3.3 Portée des variables 4.3 Les variables 4 Référence du langage Manuel PHP . Le mot clé global . Utilisation des variables static ->Les références avec les variables global et static |
4.3.3.3 Les références avec les variables global et static
Le Zend Engine 1, sur qui repose PHP 4, implémente les options static et global pour les variables, en terme de références. Par exemple, une vraie variable globale est importée dans un contexte de fonction avec global . Cette commande crée en fait une référence sur la variable globale. Cela peut vous mener à des comportements inattendus, par exemple :
L'exemple ci-dessus va afficher : NULL object(stdClass)(0) { } Un comportement similaire s'applique à la commande static . Les références ne sont pas stockées dynamiquement :
L'exemple ci-dessus va afficher : Objet statique : NULL Objet statique : NULL Objet statique : NULL Objet statique : object(stdClass)(1) { ["property"]=> int(1) } Ces exemples illustrent les problèmes rencontrés lors de l'assignation de référence à des variables statiques, qui sont oubliées lorsque vous appelez &get_instance_ref() une seconde fois. |
<< | Les références avec les variables global et static | >> |
Utilisation des variables static | Portée des variables | Les variables |