Bonsoir.

Je cherche à initialiser des variables, en dehors de tout constructeur, avec des valeurs d'autres variables.
Ainsi, je voudrais faire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<?php
class Constants {
	private static $varA = "hello wold";
	private static $varB = "bonjour le monde";
 
	public static $var1 = self::$varA;
	//public static $var1 = $varA;
	public static $var2 = self::$varA;
	public static $var3 = self::$varB;
}
?>
J'ai une erreur du type
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Parse error: syntax error, unexpected T_VARIABLE, expecting T_STRING
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Parse error: syntax error, unexpected T_VARIABLE
(en fonction de la présence de self:: ou non).
Ainsi, je n'ai que la classe de constante à changer, pas les classes qui utilisent $var1, $var2 ou $var3.

Dans le même genre, j'aurais besoin de faire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
<?php
class Constants {
	public static $varA = "hello wold";
}
 
class Essai {
	private $myvar = Constants::$varA;
}
?>
Et rebelotte :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Parse error: syntax error, unexpected T_VARIABLE, expecting T_STRING
Quelle est la bonne syntaxe pour faire cela ?