使用MVC Codeigniter分隔页眉和页脚

rog*_*ger 2 php templates codeigniter

我在寻找一个简单的方法,以具有相同的页眉和页脚显示所有的时间,同时能够切换出主要内容的区域.我不确定如何使用MVC实现这一目标.

Ste*_*ran 11

您可以创建主视图.

意见/ master.php

$this->load->view('header');
echo $content;
$this->load->view('footer');
Run Code Online (Sandbox Code Playgroud)

然后使用一种方法创建一个基本控制器来呈现主视图.子视图的内容被加载并传递到主视图.

库/ MY_Controller.php

class MY_Controller extends Controller
{
    public function __construct()
    {
        parent::__construct();
    }

    public function master_view($content_view, $data)
    {
        $data['content'] = $this->load->view($content_view, $data, true);
        $this->load->view('master', $data);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后扩展此基本控制器并从您的操作方法调用基本控制器的方法.

控制器/ items.php

class Items extends MY_Controller
{
    public function __construct()
    {
        parent::__construct();
    }

    public function index()
    {
        $data['items'] = $this->item_model->get_items();
        $this->master_view('items/index', $data);
    }
}
Run Code Online (Sandbox Code Playgroud)

它往往比在每个视图中加载页眉和页脚更干.