13-05-2010, 10:05 PM
Les tableaux qui sont accessibles partout sans qu'il soit nécessaire de les déclarer en variables globales sont des superglobales : $_SESSION, $_GET, $_POST...
En objet on se passe de globales en utilisant des Singleton. Si tu utilises des globales, donne-leur des nom explicites, des scripts avec des globales ça peut être galère à lire / débugger. Tu peux respecter la convention de PHP et les nommer genre $_TOTO. Quand tu tombes dessus tu sais d'entrée que c'est une variable globale. C'est encore mieux si c'est un tableau. En principe tu devrais pas avoir besoin de beaucoup de variables globales, encore moins si tu les regroupes dans des tableaux : $_USER, $_CONFIG, $_MAP, $_PAUPAUL etc..
Sinon, je pense pas qu'il soit possible de rendre une variable globale partout sans qu'on ait à la déclarer et c'est tant mieux, t'imagines les risques de collision de noms de variables, la difficulté à développer et à débugger que ça entraînerait ? Ça ruinerait aussi le concept de "scope" des variables... Bref, ce serait impinable. Suffirait que quelque part dans un fichier php une variable porte le même nom et tout pète. pour un script de 10 lignes ça va, pour une vraie application ce serait pas un concept viable.
En objet on se passe de globales en utilisant des Singleton. Si tu utilises des globales, donne-leur des nom explicites, des scripts avec des globales ça peut être galère à lire / débugger. Tu peux respecter la convention de PHP et les nommer genre $_TOTO. Quand tu tombes dessus tu sais d'entrée que c'est une variable globale. C'est encore mieux si c'est un tableau. En principe tu devrais pas avoir besoin de beaucoup de variables globales, encore moins si tu les regroupes dans des tableaux : $_USER, $_CONFIG, $_MAP, $_PAUPAUL etc..
Sinon, je pense pas qu'il soit possible de rendre une variable globale partout sans qu'on ait à la déclarer et c'est tant mieux, t'imagines les risques de collision de noms de variables, la difficulté à développer et à débugger que ça entraînerait ? Ça ruinerait aussi le concept de "scope" des variables... Bref, ce serait impinable. Suffirait que quelque part dans un fichier php une variable porte le même nom et tout pète. pour un script de 10 lignes ça va, pour une vraie application ce serait pas un concept viable.