[RESOLU] Petite Question :)

Petit nouveau ! | 2 Messages

20 févr. 2014, 20:15

Bonjour, j'aimerai savoir comment faire pour avoir une variable commune a plusieurs instance d'une même classe.
Du genre...

$voiture1 = new Voiture("bleu");
$voiture2 = new Voiture("rouge");
$voiture1->getNbRoue(); //retourne 4
$voiture2->getNbRoue(); //retourne 4

où le nombre de roues est 4, mais qu'il soit modifiable facilement. Par exemple :

setNbRoueVoiture(6);

$voiture1->getNbRoue(); //retourne 6
$voiture2->getNbRoue(); //retourne 6

sans devoir le modifier dans chaque classe Voiture une par une.

Merci.
Cordialement,
Macharius.

ViPHP
xTG
ViPHP | 7331 Messages

20 févr. 2014, 20:41

C'est une variable de class qu'il te faut alors.
Autrement dit une variable statique, elle ne dépend pas de l'instance.
class A
{
  public static $nombre = 0;
  public $nombre2;

  public function getNombre()
  {
    return A::$nombre; // ou return self::$nombre;
  }
}
$a1 = new A();
$a2 = new A();
$a1->nombre2 = 1;
$a2->nombre2 = 2;
echo $a1->nombre2; // 1
A::$nombre = 1;
echo $a1->getNombre(); // 1
echo $a2->getNombre(); // 1

Petit nouveau ! | 2 Messages

20 févr. 2014, 20:55

niquel ça marche parfaitement.
:) merci :)