J'ai une hiérarchie de classes dans PHP 5.2.9
.Propriétés de tableau PHP héritées
La classe de base possède une propriété protégée qui est un tableau associatif.
Les classes enfants peuvent ajouter des éléments au tableau.
Les classes enfants sont déclarées dans les fichiers séparés (plugins), qui seront créés et ajoutés par plusieurs développeurs.
Quelle est la meilleure façon d'ajouter les éléments à la propriété dans les classes enfants afin que la déclaration d'un nouvel enfant soit aussi simple que possible?
<?php
class A {
protected $myproperty = array (
'A1' => 1,
'A2' => 2
);
function myprint()
{
print_r($this->myproperty);
}
};
class B extends A {
// add 'B1', 'B2' to myproperty
};
class C extends B {
// add 'C1', 'C2' to myproperty
};
$c = new C();
$c->myprint();
// The line above should print A1, A2, B1, B2, C1, C2
?>
Idéalement, je voudrais le faire pour les développeurs aussi simples que la déclaration d'une variable ou une propriété privée, sans avoir besoin d'un code copypaste.
C'est exactement ce que j'ai d'abord pensé, mais y a-t-il un moyen plus simple? – Quassnoi
Vous pouvez essayer d'automatiser ce processus en utilisant get_class() et ajouter les propriétés dans le constructeur de la classe A. Mais je suppose que c'est beaucoup plus complexe (pour vous au moins). – Veger
Comment faire cela en utilisant 'get_class()'? – Quassnoi