Les variables et la POO

Mammouth du PHP | 725 Messages

03 juil. 2011, 05:14

quand je fais appel aux fonctions une par une, ca marche, mais quand j'appelle la fonction global ca marche pas, elle affiche l'erreur:
//$check->checkAndIncludeFile($this_page.'.php'); // ca marche pas
//$check->fileExists($this_page.'.php'); // ca marche
//$check->isFile($this_page.'.php'); // ca marche
//$check->fileArray($this_page.'.txt'); // ca marche
//$check->fileRegex($this_page.'.txt'); // ca marche

devlop78
Invité n'ayant pas de compte PHPfrance

04 juil. 2011, 03:13

Attends, il serait bien de répartir les sujets là, car un coup tu parles de variable globale, un coup de ta classe ... Donc, peux-tu créer un sujet sur cette classe avec le code entier, parce que là je sais plus où on en est !

Mammouth du PHP | 725 Messages

04 juil. 2011, 03:52

le sujet parle de "Les variables et la POO" donc utilisation des variables et de la class, une des solutions est la fonction global, dans mon sujet, j'ai mis mon code et j'ai precise, que quand je fais appel a la class je perds mes variables

devlop78
Invité n'ayant pas de compte PHPfrance

06 juil. 2011, 05:27

Oui ... bah soit tu utilises le mot clé global, soit tu utilises registry, soit tu utilises $GLOBALS[]

Mammouth du PHP | 725 Messages

07 juil. 2011, 02:09

Oui ... bah soit tu utilises le mot clé global, soit tu utilises registry, soit tu utilises $GLOBALS[]
l'utilisation de global se fait au sein de la fonction
$var = 'mot';

function name() {
global $var;

echo $var;
}
et si j'utilise pas des fonctions, comment puis-je faire?

devlop78
Invité n'ayant pas de compte PHPfrance

08 juil. 2011, 04:58

Si tu n'utilises pas de fonction, tu es dans la même portée ... Et si tu utilises des méthodes, tu joues avec les mots ;) ... Pour les méthodes c'est pareil global. Il n'y a pas 36 milles portée en PHP, sauf exceptions auxquelles je n'aurais pas pensées, il n'y a que local et global (+ propriétés de classe). Ce n'est pas comme en JavaScript ou la portée est plus simple et plus logique je trouve.

Mais je vais te dire, cela fait plusieurs années que je n'ai pas utilisé 'global', car soit j'utilise une constante, soit un registre, soit je le passe comme argument, soit je le passe avec référence.

Mammouth du PHP | 725 Messages

11 juil. 2011, 07:27

Mais je vais te dire, cela fait plusieurs années que je n'ai pas utilisé 'global', car soit j'utilise une constante, soit un registre, soit je le passe comme argument, soit je le passe avec référence.

C'est quoi la solution pour registre, ou bien de me donner des exemples sur la constante

devlop78
Invité n'ayant pas de compte PHPfrance

11 juil. 2011, 22:48

Tu as tout le web pour ça ! Je crois en plus t'avoir déjà donné un exemple avec Registry::get() et Registry::set()