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 04/06/2008, 16h55   #1
Invité de passage
 
Inscription : juin 2008
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 4
Points : 1
Points : 1
Par défaut Interpréter une variable string comme constante

Bonjour,
J'ai farfouillé le forum mais pas moyen de trouver quelque chose qui me convient, c'est peut être impossible !
Je voudrais interpréter une variable (string) construit dynamiquement comme constante....
un exemple sera plus parlant :

Code :
1
2
3
4
5
6
7
8
 
define("constante_toto", "Ma constante dédiée à toto");
 
$str = "toto";
 
$var = "constante_".$str;
 
echo '<p>'.$$var.'</p>';
Je ne sais pas quel syntaxe utiliser, le double dollars ne fonctionne pas mais je voudrais arriver à ce que dans ma balise p figure le texte de la constante qui a étée construite dynamiquement.
L'exemple est très simple et pourrais largement être contourné mais j'ai un usage plus complexe qui mériterait cette interprétation de variable comme constante.

Merci de votre aide,
Cordialement,
jérémy
_jerem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2008, 16h59   #2
Membre éclairé
 
Avatar de sacricri
 
Jean-Philippe Morvan
Inscription : juin 2008
Messages : 324
Détails du profil
Informations personnelles :
Nom : Jean-Philippe Morvan
Âge : 27

Informations forums :
Inscription : juin 2008
Messages : 324
Points : 349
Points : 349
je ne suis pas sur de comprendre mais si c'est ce que je pense ça doit être quelque chose comme ça :
for($i=0;$i<4;$i++){
${'variable'.$i} = $i;
}
ce qui donne $variable1 = 1 / $variable2 = 2 / $variable3 = 3

mais je ne suis pas sur que ce soit ça que tu cherches
sacricri est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/06/2008, 17h13   #3
Inactif
 
Inscription : mai 2008
Messages : 179
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 179
Points : 179
Points : 179
Passe par http://fr.php.net/manual/fr/function...-constants.php qui te renvoie un tableau associatif type nom de la constante => valeur.

Mais si t'as besoin de faire ça c'est probablement une erreur de conception. C'est particulièrement moche, que ce soit avec des variables ou des constantes.
sielfried est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2008, 23h22   #4
Modérateur
 
Avatar de s.n.a.f.u
 
Homme
Développeur Web
Inscription : août 2006
Messages : 2 700
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 37
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2006
Messages : 2 700
Points : 3 357
Points : 3 357
Citation:
Envoyé par sielfried Voir le message
Mais si t'as besoin de faire ça c'est probablement une erreur de conception. C'est particulièrement moche, que ce soit avec des variables ou des constantes.
+1
s.n.a.f.u est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2008, 01h05   #5
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Pour répondre à la question d'un point de vue purement technique, c'est vers la fonction constant qu'il faut se tourner. Cela devrait donc donner :
Code :
1
2
3
4
5
6
7
define("constante_toto", "Ma constante dédiée à toto");
 
$str = "toto";
 
$var = "constante_".$str;
 
echo '<p>'.constant($var).'</p>';
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h46.


 
 
 
 
Partenaires

Hébergement Web