Bonjour
La question est dans le sujet : est-il possible d'utiliser une variable PHP directement dans une fonction de classe, ou est-il nécessaire de la définir comme variable de classe avant ?
merci
Bonjour
La question est dans le sujet : est-il possible d'utiliser une variable PHP directement dans une fonction de classe, ou est-il nécessaire de la définir comme variable de classe avant ?
merci
C'est une fonction php ou une constante que tu as defini ?
Si c'est une fonction php, je crois que non, c'est pas la peine de la declarer dans la classe (c'est le cas des constantes aussi). Tu as essaye ?
J'ai essayé, mais j'ai un message d'erreur. Je suppose qu'il faut définir la variable quelque part, mais où ?
Tu peux mettre
n'importe où, mais tu dois faire un inlude.
Code : Sélectionner tout - Visualiser dans une fenêtre à part define("NOM_CONSTANTE", "CONTENU");
Apres, tu peux l'utiliser dans ta classe.
Ah, j'avais oublié de préciser : il s'agit bien d'une variable, pas d'une constante.
Exemple de ce que je veux :
au lieu d'être obiligé de faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $var = 1; //la variable est donc au niveau du script class maclasse { maclasse() { echo $var; //j'affiche la variable du script sans la déclarer en variable de classe } }
Est-ce possible en déclarant la variable $var comme globale ? Où dans ce cas ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $var = 1; //la variable est donc au niveau du script class maclasse { maclasse($var) { echo $var; } }
hello,
essaye avec global, mais c'est un non-sens, une classe est sensée s'occuper de ses membres et des parametres qu'on peut lui passer, c'est tout.
Salut,
Si j'ai bien compris, pour ce que tu cherches à faire il existe les methodes __get(), __set(), et meme __call()
je men sers pour mon MVC
voila un extrait
la classe complete
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public function __set ($key, $val) { $this->_vars[$key] = $val; } public function __get ($key) { return $this->_vars[$key]; }
http://pastebin.funraill.org/e954da0...0b31c402f803f/
donc dans le code :
sahid
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 : $view = new view() $view->uneVar = "hello wolrd" // utilisation de __set() echo $view->uneVar; // utilisation de __get()
Oui, j'ai réussi avec global $var dans la fonction qui en avait besoin dans la classe
Pour expliquer le pourquoi, une classe qui sert à générer des tableaux dynamiques. Sur chacune de tes pages, tu vas avoir un tableau. Un des paramètres d'affichage des tableaux (ici, le sens de tri du tableau) est extérieur à la classe. 2 solutions :
- je passe la variable $tri au constructeur de la classe dès que je créé un tableau -> il faut modifier plus de 50 pages
- je globalise la variable $tri dans la classe -> je ne modifie que la classe.
C'est vrai que c'est pas très propre, mais c'est efficace et surtout ça ne prend pas trop de temps
Envoyé par Petibidon
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager