2009-12-15 18 views
0

我有不同的方法的控制器訪問,但是它們都具有設置在視圖中的框示出爲包含的項目的列表的變量,我從提取數據DB並設置$data['categories']
我可以設置一次,並通過所有方法使其可見嗎?設置變量由類內的不同方法

回答

1

除此之外,如果你只使用$此 - >數據來獲得值到您的看法,而不是做:

$this->data->something = 'whatever'; 

然後做

$this->load->view('something', $this->data); 

可以用,而不是設置:

$this->load->vars('something', 'whatever'); 

再後來就正常使用的本地化$ data數組(或任何你喜歡)作爲變量將在全球範圍內提供給所有加載查看文件。

我不是暗示無論哪種方式比較好,只是讓你知道這是怎麼回事可以這樣做。我個人使用這些方法的組合。 :-)

+0

謝謝,我錯過了load-> vars,這正是我所需要的。 – 2009-12-15 18:04:21

1

使其成爲類

class Controller { 
    protected $data; 

和使用「$這一」來訪問你的方法的屬性:

class Controller { 
    function foo() { 
     $this->data etc... 
+0

是的,這是一個愚蠢的問題。我這樣做,但忘記使用'$ this-> data',而不是在加載視圖時使用'$ data'。謝謝。 – 2009-12-15 11:29:22

相關問題