Page 1 sur 1
unexpected T_VARIABLE... et constante...
Posté : 23 janv. 2007, 17:13
par jojolapine
Bonjour à tous,
j'ai une toute petite question....
je suis en train de faire une petite classe, et j'essaye de définir une constante contenant $_SERVER['PHP_SELF']; seulement il m'indique l'erreur donnée dans le titre, voilà comment je procède:
const DEFAULT_URL=$_SERVER['PHP_SELF'];
alors est-ce que les constantes n'acceptes pas les variables en tant que valeurs ?
je m'en remet à vous...
merci d'avance!
Posté : 23 janv. 2007, 17:29
par Ryle
Personnellement pour définir une constante, j'utilise define() qui fonctionne très bien :
define("DEFAULT_URL", $_SERVER['PHP_SELF']);
Sinon, ne connaissant pas const, j'ai jeté un p'tit coup d'oeil sur le net... ne faudrait-il pas un ":=" au lieu du "=" pour affecter la valeur ?
Posté : 23 janv. 2007, 17:40
par Jules Petibidon
hello,
non pas de :=...
par contre const ne doit s'utiliser qu'à l'intérieur d'une définition de classe... comme un simple initialiseur de membre...
donc deux questions : est ce bien dans ta classe que tu utilise const ?
et t'es bien en php5 ?
Posté : 23 janv. 2007, 17:40
par jojolapine
c'est à n'y rien comprendre, j'ai essayer de faire un define(), mais rien à faire, j'ai un unexpected T_VARIABLE qui persiste...
alors que si je met une chaine "fixe" à la place de la variable server, ça ne marche pas avec define(), par contre ça marche avec const...
Mais je croit que dans une classe, c'est plutôt const qu'il faut utiliser non?
Posté : 23 janv. 2007, 17:41
par jojolapine
@jules: oui je suis bien en php5 et je suis bien dans ma classe...
Posté : 23 janv. 2007, 17:41
par Jules Petibidon
Mais je croit que dans une classe, c'est plutôt const qu'il faut utiliser non?
oui, et uniquement là.
Posté : 23 janv. 2007, 17:54
par Jules Petibidon
souis-je bete !
depuis php4 il est interdit d'initialiser les membres avec une valeur non fixe...
le probleme vient surement de là...
Posté : 23 janv. 2007, 17:55
par jojolapine
bon ben ça doit être ça alors...
Très bien alors je vais faire autrement!
merci
