来自控制器的变量不会发送到CodeIgniter中的视图

时间:2013-02-25 11:39:52

标签: codeigniter

我正在使用HMVC和CodeIgniter。

我在我的testmodule控制器中有这个:

public function index()
{ 
     $this->view_data['main_content'] = 'frontpage';
     $this->load->view('template', $this->view_data);
}

这是在我的视图中该控制器加载的控制器的template.php:

    <?php 

      $this->load->view('includes/header');

      $this->load->view($main_content);

      $this->load->view('includes/footer'); 

    ?>

但是,当我在视图中的var_dump($ main_content)和die()时,它显示 null 而不是首页

怎么样,来?我根本没有得到它。

1 个答案:

答案 0 :(得分:1)

如果您想使用$this->view_data,则必须先将$view_data声明为property(位于控制器顶部):

class TestModule extends CI_Controller
{
  public $view_data = array();

  public function index()
  {
    // Now you can use $this->view_data in this function:
    $this->view_data['main_content'] = 'frontpage';
    $this->load->view('template', $this->view_data);
  }
}