Codeigniter 如何在视图的所有部分中传播$数据?
我需要在视图的所有部分(页眉、顶部、左侧边栏、右侧边栏、页脚)内传播所有控制器Codeigniter 如何在视图的所有部分中传播$数据?,codeigniter,frameworks,views,codeigniter-3,Codeigniter,Frameworks,Views,Codeigniter 3,我需要在视图的所有部分(页眉、顶部、左侧边栏、右侧边栏、页脚)内传播所有控制器$data,由于我不知道执行此任务的正确方法,我将$data发送到构建此视图的所有部分 class MY_Loader extends CI_Loader { public function loader_page($views, $data = null){ $this->view("incs/header", $data); $this-&
$data
,由于我不知道执行此任务的正确方法,我将$data
发送到构建此视图的所有部分
class MY_Loader extends CI_Loader {
public function loader_page($views, $data = null){
$this->view("incs/header", $data);
$this->view("incs/top", $data);
$this->view("incs/sidebar-left", $data);
$this->view("incs/system_messages", $data);
$this->view($views, $data);
$this->view("incs/sidebar-right", $data);
$this->view("incs/footer", $data);
}
}
是否有人知道在不发送构建视图的所有部分中的$data
的情况下执行此任务的正确方法
您应该从
我的\u控制器
扩展,试试这个
在application/core/MY_Controller.php中
class MY_Controller extends CI_Controller{
public function loader_page($views, $data = []){
$this->load->view("incs/header", $data);
$this->load->view("incs/top", $data);
$this->load->view("incs/sidebar-left", $data);
$this->load->view("incs/system_messages", $data);
$this->load->view($views, $data);
$this->load->view("incs/sidebar-right", $data);
$this->load->view("incs/footer", $data);
}
}
在控制器中
class Inicio extends MY_Controller{
public function __construct(){
parent::__construct();
}
public function index() {
$data['title'] = 'Your title';
$this->loader_page('forms', $data);
}
}
希望这有帮助您应该从
我的\u控制器扩展过来
试试这个
在application/core/MY_Controller.php中
class MY_Controller extends CI_Controller{
public function loader_page($views, $data = []){
$this->load->view("incs/header", $data);
$this->load->view("incs/top", $data);
$this->load->view("incs/sidebar-left", $data);
$this->load->view("incs/system_messages", $data);
$this->load->view($views, $data);
$this->load->view("incs/sidebar-right", $data);
$this->load->view("incs/footer", $data);
}
}
在控制器中
class Inicio extends MY_Controller{
public function __construct(){
parent::__construct();
}
public function index() {
$data['title'] = 'Your title';
$this->loader_page('forms', $data);
}
}
希望这对你有所帮助你不喜欢目前的做事方式吗?它不起作用吗?为什么要重写/添加加载器函数?只需制作一个模板模型或做些什么就可以了。无需扩展loader类。我能看到的唯一一种方法是将
$data
添加到每个视图,而不必这样做,这将涉及到对核心的修改-它不会改进任何东西,我也不认为您的操作方式有任何错误(除了可能将其移动到模型).你不喜欢你目前的做事方式吗?它不起作用吗?为什么要重写/添加加载器函数?只需制作一个模板模型或做些什么就可以了。不需要扩展loader类。我唯一能看到的另一种方法是在不必这样做的情况下将$data
添加到每个视图中,这将涉及到对核心的修改——它不会改进任何东西,而且我看不出您的操作方式有任何错误(除了可能将其移动到模型)。