我添加了一些變量來了「是CI_Controller」級的底部,像這樣:如何使變量在Codeigniter中的所有控制器中都可訪問?
$data['foo'] = 'bar';
$data['animal'] = 'dog';
$data['justin_beiber'] = 'terrible';
因爲我想這些變量在我的所有控制器和因爲所有的控制器訪問擴展了這個是CI_Controller,我想這將工作:
echo $data['foo'];
die();
我把它放在一個擴展CI_Controller的控制器。但它不輸出任何東西。如何讓這個工作?
謝謝,這似乎是一個好主意。然而,這是我的最終目標:我想在所有的觀點中使所有這些變量都可以使用。但現在我必須做這樣的事情:$ data ['foo'] = $ this-> config-> item('foo');我必須在每個控制器中執行此操作。有沒有辦法將這些變量傳遞到我的$ data變量中,以便當我從我的控制器傳遞這個變量時,$ data變量會自動包含所有那些以前在配置文件中定義的變量?基本上我不想在每個控制器中重複這個變量賦值代碼。 – TK123
也許嘗試用MY_Controller擴展控制器,然後調用$ this-> load-> vars(array('foo'=>'whatever'));在構造函數中... – landons
我或多或少意味着您可以調用$ this-> config-> item('foo')來取代$ data ['foo']或者只是$ foo,但這不是真正的答案對你的問題。至少配置選項是一個選項。 –