gpt4 book ai didi

templates - 在 CI 中加载页眉和页脚 View

转载 作者:行者123 更新时间:2023-12-02 22:23:09 25 4
gpt4 key购买 nike

有没有办法在不调用 $this->load->view('header')$this->load-> 的情况下加载 View “header”/“footer” view('footer') 在每个 Controller 中?也许是一个可以在每个 View 中使用的模板?

最佳答案

这里有一些简单的入门方法:

创建模板类:

class Template {

function load($view)
{
$CI = &get_instance();
$CI->load->view('header');
$CI->load->view($view);
$CI->load->view('footer');
}

}

在 Controller 中的用法:

$this->template->load('my_view');

使用主视图文件:

<!-- views/master.php -->
<html>
<header>Your header</header>
<?php $this->load->view($view, $data); ?>
<footer>Your footer</footer>
</html>

在 Controller 中:

$this->load->view('master', array(
'view' => 'my-view-file',
'data' => $some_data
));
<小时/>

我更喜欢 Template 类方法,因为它很容易添加方法来附加模板区域、加载 javascript 文件以及您需要的任何其他内容。我还喜欢根据调用的方法自动选择 View 文件。像这样的事情:

if ( ! isset($view_file)) {
$view_file = $CI->router->fetch_class().'/'.$CI->router->fetch_method();
}

如果 Controller 是 Users 并且方法是 index,这将加载 views/users/index.php

关于templates - 在 CI 中加载页眉和页脚 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8601054/

25 4 0