Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/07/2011, 14h24   #1
Membre habitué
 
Inscription : décembre 2007
Messages : 181
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 181
Points : 140
Points : 140
Par défaut Variable globale et POO

Bonjour,

je travail actuellement dans un environnement ou la POO n'est pas valorisé mais qu'à cela ne tienne j'essaie d'apporter ma pierre !

Bref une variable initialisé dans un fichier commun stock actuellement le nom de l'environnement (dev, test, preprod, prod) correspondant au suffixe des bases de données.

J'ai besoin dans une classe de récupérer cette variable, l'idéal serait de ne pas la passer en paramètre d'instanciation.

l'idéal eut été ceci:
Code :
1
2
3
4
5
6
$truc=2;
class foo{
	global $truc;
	public $info;
	$this->$info=$truc;
}
ce code n'étant bien sur pas valable mais décrit je pense plus bien mon besoin.

merci d'avance.
roduce est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 14h32   #2
Membre Expert
 
Avatar de kdmbella
 
Homme Demazy Mbella
Développeur Web
Inscription : août 2010
Messages : 620
Détails du profil
Informations personnelles :
Nom : Homme Demazy Mbella
Localisation : Cameroun

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : août 2010
Messages : 620
Points : 1 470
Points : 1 470
j'espère avoir bien compris ton problème !
je pense que lorsqu'une variable est déclaré comme globale alors elle est accessible n'importe ou dans ton application il me semble, a l'intérieur comme à l'extérieur d'une classe donc il ne devrait pas y avoir de problème a mon sens !
__________________
Trois personnes peuvent garder un secret si deux d'entre elles sont mortes. :Benjamin Franklin
L'humanité se divise en trois catégories : ceux qui ne peuvent pas bouger, ceux qui peuvent bouger, et ceux qui bougent : Benjamin Franklin
Le hasard, c'est le déguisement que prend Dieu pour voyager incognito: Albert Einstein
bon je m'arrête là au risque de me faire buter
kdmbella est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 14h35   #3
Membre habitué
 
Inscription : décembre 2007
Messages : 181
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 181
Points : 140
Points : 140
avec ce code là, j'ai une alerte dans eclypse et une erreur en execution. Donc non ça ne passe pas. ça marcherait si c'était une function mais pas une classe.
roduce est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 14h57   #4
Modérateur
 
Avatar de FirePrawn
 
Homme Sébastien
Ingénieur réalisateur
Inscription : mars 2011
Messages : 775
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Âge : 24
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ingénieur réalisateur
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 775
Points : 2 335
Points : 2 335
C'est normal tu redéclares la variable $truc.
Si tu enlèves la ligne ça donne quoi ?
FirePrawn est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 15h03   #5
Membre habitué
 
Inscription : décembre 2007
Messages : 181
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 181
Points : 140
Points : 140
**honte**
effectivement si on met le global dans une methode/function ça passe

avec ce code:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
$truc=2;
class foo{
	public $info;
	function test(){
		global $truc;
 
	$this->info=$truc;
	echo "affiche: ".$this->info;
	}
}
$a = new foo();
$a->test();
merci !
roduce est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 15h30   #6
Modérateur
 
Avatar de FirePrawn
 
Homme Sébastien
Ingénieur réalisateur
Inscription : mars 2011
Messages : 775
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Âge : 24
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ingénieur réalisateur
Secteur : Industrie

Informations forums :
Inscription : mars 2011
Messages : 775
Points : 2 335
Points : 2 335
Pas de quoi
FirePrawn est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h56.


 
 
 
 
Partenaires

Hébergement Web