私はこの基本クラスを持っています:
class Base
{
public $extA;
public $extB;
function __construct()
{
}
public function Init()
{
$this->extA = new ExtA();
$this->extB = new ExtB( $this );
}
public function Test()
{
return 'Base Test Here!';
}
}
基本クラスを拡張するクラス ExtA
class ExtA extends Base
{
public function Test()
{
return 'ExtA Test Here!';
}
}
クラスExtBも基本クラスを拡張します
class ExtB extends Base
{
private $base;
public function __construct( $base )
{
$this->base = $base;
}
public function Test()
{
return 'ExtB calling ExtA->Test()::' . $this->base->extA->Test();
}
}
$base = new Base();
$base->Init();
var_dump( $base->Test() );
var_dump( $base->extA->Test() );
var_dump( $base->extB->Test() );
ExtB から ExtA クラスの Test() 関数を呼び出そうとすると、ExtA と ExtB の両方が Base クラスを拡張しています。私の質問は次のとおりです:これは大丈夫ですか、それともより良い、より速い解決策がありますか?
拡張も必要ですか?または、単にこのように
class ExtA
{
...
}
class ExtB
{
...
}
ありがとう!