[PHP5] Constructeur de la classe mère

Fermé
hamzafes Messages postés 243 Date d'inscription lundi 26 juin 2006 Statut Membre Dernière intervention 4 mai 2013 - Modifié par baladur13 le 22/07/2016 à 17:49
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 - 17 juil. 2009 à 16:38
Salam,

j'ai un petit problème avec l'appel du constructeur de la classe mère.

j'ai une classe abstraite A :

abstract class A
{
public function A()
{
echo '<br/>Class A';
}


}

et une classe B qui hérite de A, et le constructeur de B appel le constructeur de A

class B extends A
{
public function B()
{
echo '<br/>Class B';
parent::A();
}

}

le problème est quand je crée une instance de B le constructeur de A n'est pas appelé

$b=new B();

affiche "Class B" seulement !!!

quelqu'un aurait une idée sur ce problème?

Merci

3 réponses

Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
14 juil. 2009 à 16:16
salut,

comme ça, ça fonctionne :
<?php
abstract class A
{
	public function __construct()
	{
		echo 'class : '.__CLASS__."\n";
	}
}
class B extends A
{
	public function __construct()
	{
		echo 'class : '.__CLASS__."\n";
		parent::__construct();
	}
}
$var = new B();
?>

sortie :
class : B
class : A

Merci et Allah mo3ine
merci ça suffit amplement.
2
hamzafes Messages postés 243 Date d'inscription lundi 26 juin 2006 Statut Membre Dernière intervention 4 mai 2013 54
Modifié par baladur13 le 22/07/2016 à 17:49
Merci pour ton code,
mais en fait, même mon code marche sur wamp (le votre aussi biensur), le problème se pause sur le serveur. je sais pas si ça une relation avec la configuration de php ou bien le version utilisée sur le serveur.
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
17 juil. 2009 à 16:38
salut,

ça doit être la version de PHP qui ne colle pas, tu dois toujours être en 4.

crée un fichier "phpinfo.php", dedans tu mets juste :
<?php phpinfo(); ?>

tu le poses sur le serveur et tu l'exécutes, ça te donnera la config du serveur PHP.
0