我想使用一个自定义的load ->视图,一旦创建,它将为页面加载一组视图。它将具有与$this->load->view()相同的功能,但也具有预加载其他视图的能力。我该如何写这篇文章并让它工作呢?谢谢
<?php
class MY_Loader extends CI_Loader
{
function __construct()
{
parent::__construct();
}
function admin_view($load_page, $vars=array())
{
$this->load->view('admin/header');
$this->load->view($load_page);
$this->load->view('admin/footer');
}
function members_view()
{
//same purpose as admin view
}
function public_view()
{
//same purpose as admin view
}
}发布于 2013-02-11 12:02:12
这看起来是正确的,只是您不需要调用$this->load,因为您已经“在”CI_Loader中(通过您的扩展),所以您可以尝试:
function admin_view($load_page, $vars=array())
{
$this->view('admin/header');
$this->view($load_page);
$this->view('admin/footer');
}这意味着您可以访问CI_Loader的view方法,因为您已经使用类对其进行了扩展。
发布于 2013-02-11 16:59:26
我曾经在views/_includes中有一个template.php,如下所示:
<?php
$this->load->view('_includes/header');
$this->load->view($view);
$this->load->view('_includes/footer');所以我想要加载的$view是通过控制器传递的。例如:
class News extends MY_Controller {
public function index()
{
$data['view'] = 'admin/news/index';
$data['results'] = $this->news_model->get_all);
$this->load->view('admin/_includes/template', $data);
}https://stackoverflow.com/questions/14805025
复制相似问题