POO héritage
Résolu/Fermé
Smoking bird
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
-
16 juin 2009 à 21:43
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 - 16 juin 2009 à 22:45
Smoking bird Messages postés 870 Date d'inscription mardi 11 mars 2008 Statut Membre Dernière intervention 10 juillet 2011 - 16 juin 2009 à 22:45
A voir également:
- Cheick yvan formate héritage
- Cheick yvan format - Forum Vos droits sur internet
- Format téléphone PDF - Forum PDF
- EXCEL 2010 format commentaire manque d'attribut ? - Forum Excel
- Que du fake formate héritage ✓ - Forum Vos droits sur internet
- Formate pour taxer client 500€ - Forum Vos droits sur internet
3 réponses
hamzafes
Messages postés
243
Date d'inscription
lundi 26 juin 2006
Statut
Membre
Dernière intervention
4 mai 2013
54
16 juin 2009 à 21:59
16 juin 2009 à 21:59
Ce que t'as fait
class sectorAC {
protected $sct;
function __construct($sct){
$this->sct=$sct;
}
}
class articles extends sectorAC{
function __construct(){
echo $this->sct;
}
}
L'erreur
je suppose que tu fait l'instanciation de la classe articles comme ça:
$a=new articles();
où bien
$sct=...
$a=new articles($sct)
Dans les deux cas rien ne serra affiché. pourquoi? je t'explique
1-new articles() ou new articles($sct) les deux appelent le constructeur de la classe articles et pas celui de la classe mère.
2-le constructeur de la classe articles n'affecte rien à l'attribut $sct, et donc $this->sct est tjr vide.
La Solution
class sectorAC {
protected $sct;
function __construct($sct){
$this->sct=$sct;
}
}
class articles extends sectorAC{
function __construct($sct){
parent::__construct($sct);
echo $this->sct;
}
}
Allah mo3ine
class sectorAC {
protected $sct;
function __construct($sct){
$this->sct=$sct;
}
}
class articles extends sectorAC{
function __construct(){
echo $this->sct;
}
}
L'erreur
je suppose que tu fait l'instanciation de la classe articles comme ça:
$a=new articles();
où bien
$sct=...
$a=new articles($sct)
Dans les deux cas rien ne serra affiché. pourquoi? je t'explique
1-new articles() ou new articles($sct) les deux appelent le constructeur de la classe articles et pas celui de la classe mère.
2-le constructeur de la classe articles n'affecte rien à l'attribut $sct, et donc $this->sct est tjr vide.
La Solution
class sectorAC {
protected $sct;
function __construct($sct){
$this->sct=$sct;
}
}
class articles extends sectorAC{
function __construct($sct){
parent::__construct($sct);
echo $this->sct;
}
}
Allah mo3ine
Godboss
Messages postés
69
Date d'inscription
lundi 4 février 2008
Statut
Membre
Dernière intervention
18 juin 2009
18
16 juin 2009 à 22:04
16 juin 2009 à 22:04
Bonjour,
Ta variable $sct n'est jamais initialisée. Essaye cela :
class sectorAC {
protected $sct;
function __construct($sct){
$this->sct=$sct;
}
}
class articles extends sectorAC{
function __construct(){
parent::__construct("Bonjour");
echo $this->sct;
}
}
new articles();
Ta variable $sct n'est jamais initialisée. Essaye cela :
class sectorAC {
protected $sct;
function __construct($sct){
$this->sct=$sct;
}
}
class articles extends sectorAC{
function __construct(){
parent::__construct("Bonjour");
echo $this->sct;
}
}
new articles();
Smoking bird
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
58
16 juin 2009 à 22:45
16 juin 2009 à 22:45
Merci bien messieurs :D vous m'avez sauvé ma journée!
Votre solution fonctionne en effet, et je ne l'avais croisée nul part :) vous avez donc toute ma gratitude et je m'incline face à votre savoir^^
Bonne soirée, et merci encore ;)
Smoke
Votre solution fonctionne en effet, et je ne l'avais croisée nul part :) vous avez donc toute ma gratitude et je m'incline face à votre savoir^^
Bonne soirée, et merci encore ;)
Smoke