假設我有這個類:在類屬性中擴展類?
class Loader
{
function library($name)
{
require $name . '.php';
}
}
,現在我包括類foo
($名)我的控制器內,像這樣:
class Controller
{
function __construct()
{
$this->load = new Loader();
}
}
class Child_Controller extends Controller
{
function __construct()
{
parent::__construct();
$this->load->library('foo');
init();
}
}
是可能的,例如,訪問包含在$this
裏面的類?像:
class Child_Controller extends Controller
{
//..construct above..
function init()
{
$this->print('some text');
}
}
其中print
是foo
方法,類包括:
class Foo
{
function print($message)
{
echo "your message: " . $message;
}
}
所以,總結,我想包括在兒童控制器,在$this
,包括類的所有方法由基本控制器擴展的Loader類。這可能嗎?
或者另一個想法是在Child_Controller,即採取包括類的名稱的屬性動態創建,所以,對於呼叫foo
我可以這樣做的方法:
$this->Foo->print('some text');
不,這不可能。你也可能會碰到相同的命名類方法。創建一個新的屬性併爲其分配一個類的實例。 –
是的,你可以。但它需要很多工作。其實,自動加載/作曲家就是你要找的東西。 – felipsmartins