2013-02-25 81 views
1

我正在使用HMVC和CodeIgniter。控制器中的变量未发送到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而不是首页

怎么回事?我一点都不明白。

+0

我不事有什么不对的代码。问题一定在其他地方。 – Mischa 2013-02-25 11:52:35

+0

我已经通过chnging $ this-> view_data将其解析为$ view_data并突然生效。但是,我不知道为什么。你知道为什么吗? – Derfder 2013-02-25 11:56:48

回答

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); 
    } 
} 
+0

非常感谢,现在它可以工作; – Derfder 2013-02-25 12:20:59

+0

没问题。很高兴现在可以工作。 – Mischa 2013-02-25 12:49:07

相关问题