Buenas,
Verán tengo el siguiente caso que resulta que no sé cómo implementarlo correctamente. No sé de que manera o qué habría que usar.
Les comento, tengo 5 clases, las cuales son las siguientes:
Base.php
Código PHP:
Ver originalclass Base
{
//propiedades
//métodos
public function __construct()
{
foreach ($this->importar_clases as $clase):
$this->$clase = new $clase;
endforeach;
}
}
ConfigBase.php
Código PHP:
Ver originalclass ConfigBase extends Base
{
public $color = 'blanco';
}
A.php
Código PHP:
Ver originalclass A extends ConfigBase
{
public $color = 'azul';
public $importar_clases = array('B', 'C');
public function metodoDeA()
{
return $this->B->metodoDeB();
}
}
B.php
Código PHP:
Ver originalclass B extends ConfigBase
{
public $color = 'rojo';
public function metodoDeB()
{
//código
}
}
C.php
Código PHP:
Ver originalclass C extends ConfigBase
{
//No específico ningún color y recoje el color de ConfigBase
public function metodoDeC()
{
//código
}
}
Cómo véis, todas heredan de ConfigBase que ésta, a su vez hereda de Base.
Se específica un color para cada clase y aquellas que no tengan ningúno cojen el color de ConfigBase que es blanco.
Bueno, el problema al que me enfrento es, ¿como incluir la clase B y C en la clase A?
Si se fijan en la propiedad
"importar_clases" trato de incluir esas clases en A para poder utilizarlas en dicha clase.
Luego, la clase Base es quién importa esas clases.
En fin, como véis es una autentica chapuza por eso me gustaría saber como resolver esto o de que manera sería mejor implementar este sistema.
Gracias por cualquier manita que me podías echar ;)
Saludos