1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
class Personne {
protected $idPersonne;
protected $nom;
protected $prenom;
public function __construct($idBase) {
// construction de mon objet via une requete select basée sur l'idBase"
}
public function getValeur($champ) {
return $this->$champ;
}
}
class Collaborateur extends Personne {
protected $idCollaborateur;
protected $idPersonne;
protected $fonction*;
public function __construct($idBase) {
$donnees = "tableau issue d'une requete MySQL basé sur l'idCollaborateur"
$this->idCollaborateur = $donnees['idCollaborateur'];
$this->idPersonne = $donnees['idPersonne'];
/* fonction qui intialise mes variables nom et prenom
* la solution que j'ai trouvé est simplement:
*/
$maPersonne = new Personne($this->idPersonne);
$this->nom = $maPersonne->getValeur('nom');
$this->prenom = $maPersonne->getValeur('prenom');
}
public function getValeur($champ) {
return $this->$champ;
}
// Fichier ou j'affiche les données
$a = new Collaborateur('12');
echo $a->getValeur('nom');// affiche le nom de mon collaborateur ayant un idPersonne chargé depuis la table collaborateur |