0
我有一個問題。我爲我的網站製作了一些mvc'ish結構。 我希望能夠在我的視圖內使用我的變量,而無需分配它們。如何在視圖內使用變量而不分配它們php
讓我用一個例子說明一下,這裏是我的控制器的一小部分:
class members extends controller{
public function _construct()
{
parent::__construct();
}
public function index()
{
$test = 'test variable';
$data['test2'] = 'test variable 2';
view::setTemplate('header');
view::setTemplate('homepage', $data);
view::setTemplate('footer');
}
}
在我看來類的setTemplate()函數
,我用extract($data)
,然後我包括視圖文件。按照預期,這樣我可以回顯$ test2並獲得'測試變量2'作爲輸出。
但是,有沒有辦法讓視圖'記住'第一個$測試變量,而不必將其添加到setTemplate函數?
我想這裏要問的問題是:爲什麼?記住,編寫明確的自我記錄代碼是可維護性的重中之重。 – 2013-02-11 20:40:51
'$ this-> test ='test variable';'因此它變成了對象的一個屬性。 – 2013-02-11 20:40:56
'extract()'是有史以來最糟糕的PHP函數之一。感謝您爲將來需要調試代碼地獄的開發人員的生活。 – AlienWebguy 2013-02-11 20:41:52