Codeigniter - 如何在没有加载视图的情况下传递变量

时间:2013-05-06 03:38:51

标签: codeigniter variables

我在控制器中有这些数据来加载视图:

private $data //defined before my construct function

function index(){
    $this->data['myvar'] = 'test'
    $this->load->view('homeview', $this->data);
}

但问题是,我希望从$this->myvar homeview访问其他视图中的maincontentview变量(它包含在homeview内)。我的问题是如何将变量传递给maincontentview而不加载它(like $this->load->view('maincontentview', $this->data))。

3 个答案:

答案 0 :(得分:1)

试试这个

在控制器

function index(){
  $data['myvar'] = 'test'
  $this->load->view('homeview', $data);
}

在您的主视图中,如果您正在使用主要内容视图,请使用以下代码

<?php
  $MyData['myvar'] = $myvar;
  $this->load->view('maincontentview', $MyData);
?>

现在你也可以在maincontentview中使用$ myvar

答案 1 :(得分:0)

如果您使用maincontentview加载$this->load->view()视图,则主视图中已有的所有变量也可供该视图使用。您只需通过$myvar访问homeview,就像在{{1}}中一样 - 无需重复数据数组。

答案 2 :(得分:-2)

$myvar声明为全局变量,并在整个代码中访问全局变量。