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 ?
Faites une recherche sur le forum et/ou sur internet et lisez la doc officielle avant de poser une question svp.
et n'oubliez pas de lire les FAQ !
FAQ Java et les cours et tutoriels Java
Doc JAVA officielle
AngularJS 1.x
Angular 2
Do it simple... and RTFM !
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.
Faites une recherche sur le forum et/ou sur internet et lisez la doc officielle avant de poser une question svp.
et n'oubliez pas de lire les FAQ !
FAQ Java et les cours et tutoriels Java
Doc JAVA officielle
AngularJS 1.x
Angular 2
Do it simple... and RTFM !
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
Partager