我正在學習代碼點火器。我遇到了這個超級對象。在codeigniter中使用超級對象的好處是什麼
代碼點火器具有加載類並將它們存儲在實例變量中的功能。每次我們需要包含一個新類或之前加載的類時,代碼點火器會首先在實例數組中搜索它,如果未找到,則加載它幷包含在instanc數組中。
我的問題是在類中,當我們可以通過load_class函數包含類(因爲這個函數首先在insntance數組中搜索,所以減少了一次又一次包含相同類的開銷),那麼需要聲明超類對象包括預定義或加載新類。
當我們可以做到這一點。
class CLASSNAME
{
function functionname()
{
$object = load_class(classname, location);
$object->callfunction();
}
}
那麼,爲什麼我們要做這個
class CLASSNAME
{
function functionname()
{
$superobject = & get_instance();
$superobject->classobject->function();
}
}
只是想知道使用超級對象的利益。只是包括所有預定義的對象,或者是我無法理解的更深入和有益的東西。
在此先感謝。
您使用已存在的對象而不是重複它們。應該加快速度,因爲你不會有重複的數據。 –
是的,這就是我想知道的超級對象的好處。這是(爲每個類使用現有的定義對象,而不是新的,以便每個類只有一個對象)唯一的好處,或者還有更多的好處。如果我沒有錯,那麼在「目標類」中定義一個新的對象來包含另一個「所需的類」是沒有問題的,因爲對象作用域保留在類範圍內。 –