[POO] Paramètres par défaut passé au constructeur
Hello!
Je suis tombé sur un problème que je ne saisis pas....
voici un bout de code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
<?php
class voiture{
public $roue;
public $couleur;
public $boite;
function __construct($roue, $couleur = "rouge", $boite = 6){
$this->roue = $roue;
$this->couleur = $couleur;
$this->boite = $boite;
}
function affiche(){
echo 'Ma voiture '.$this->couleur.' à '.$this->roue.' roues et une boîte '.$this->boite.' vitesses.<br/>';
}
}
$v1 = new voiture(3, "bleu", 4);
$v1->affiche();
$v2 = new voiture();
$v2->affiche();
$v3 = new voiture("bleu", 4);
$v3->affiche();
?> |
dans la définition du constructeur, certains paramètres ont des valeurs par défaut.... dois-je en donner à tous, si je veux utiliser les constructeurs donnés en exemple?
Résultat obtenu par le code suivant :
Citation:
Ma voiture bleu à 3 roues et une boîte 4 vitesses.
Warning: Missing argument 1 for voiture::__construct(), called in C:\wamp\www\php5\formation\test\param.php on line 28 and defined in C:\wamp\www\php5\formation\test\param.php on line 16
Ma voiture rouge à roues et une boîte 6 vitesses.
Ma voiture 4 à bleu roues et une boîte 6 vitesses.
Merci de vos réponses...