php - CodeIgniter 中的页眉和页脚

标签 php codeigniter

我真的不喜欢在每个 Controller 中编写:

    $this->load->view('templates/header');
    $this->load->view('body');
    $this->load->view('templates/footer');

是否可以自动包含页眉和页脚,如果我们需要更改它,我们也可以这样做?你怎么处理那件事呢?或者在你看来这不是问题?谢谢。

最佳答案

这是我的工作:

<?php

/**
 * /application/core/MY_Loader.php
 *
 */
class MY_Loader extends CI_Loader {
    public function template($template_name, $vars = array(), $return = FALSE)
    {
        $content  = $this->view('templates/header', $vars, $return);
        $content .= $this->view($template_name, $vars, $return);
        $content .= $this->view('templates/footer', $vars, $return);

        if ($return)
        {
            return $content;
        }
    }
}

对于 CI 3.x:

class MY_Loader extends CI_Loader {
    public function template($template_name, $vars = array(), $return = FALSE)
    {
        if($return):
        $content  = $this->view('templates/header', $vars, $return);
        $content .= $this->view($template_name, $vars, $return);
        $content .= $this->view('templates/footer', $vars, $return);

        return $content;
    else:
        $this->view('templates/header', $vars);
        $this->view($template_name, $vars);
        $this->view('templates/footer', $vars);
    endif;
    }
}

然后,在你的 Controller 中,这就是你所要做的:

<?php
$this->load->template('body');

关于php - CodeIgniter 中的页眉和页脚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9540576/

相关文章:

php - 记录 php 错误但不在浏览器中显示

php - 创建复杂的 IF、OR、NOT & AND SQL 查询 (MySQL)

jQuery 和 Codeigniter - 使用 ajax 发布表单并在 fancybox 中显示结果

php - 如果我使用沙箱,IPN 无效

php - 将 Meteor 与另一种编程语言结合使用

php - 使用 Zend Guard 保护代码

php - 如何在 codeigniter 中保存和提取 session 数据

php - 如何更改 Laravel 的 Auth 过滤器的默认重定向 URL?

php - 在 codeigniter 中获取列值数组

php - 基础菜单在 CodeIgniter 中不起作用