CodeIgniter模板引擎使用实例

一、示例:

通常在使用codeigniter的时候经常使用这样的方式载入:

load->view('about',$data);

通过这个类库,可以将一个视图载入到这个模板中:

template->load('template','about',$data);

这里将视图about.php载入到template模板文件中。

二、安装

下载 解压后将Template.php放到application/libraries应用类库目录中; 应用程序启动自动加载application/config/autoload.php;

三、创建一个模板文件

application/views/template.php 模板中的代码如下:

$contents是你在控制器中显示需要插入的内容。

四、创建一个视图

application/views/about.php 添加如下代码:

About

I'm so human!

在模板引擎中载入视图 在你的控制器中可以使用

template->load('template','about');

这个模板引擎工作流程:

视图被载入到一个变量中,这个变量会被载入到模板中去

function set($name,$value)
{
$this->template_data[$name] = $value;
}

function load($template = '',$view = '',$view_data = array(),$return = FALSE)
{
$this->CI =& get_instance();
$this->set('contents',$this->CI->load->view($view,$view_data,TRUE));
return $this->CI->load->view($template,$this->template_data,$return);
}

五、技巧总结

例子:你如果需要在页面中显示标题。 那么在HTML的头部views/template.php增加:

<?= $title ?>

然后直接在控制器中设置:

template->set('title','About me');

导航通常是被用于在模板中,一个体验好的导航应该告诉用户当前所处的位置分类是什么。

定义你的导航项目:

引入application/libraries/Template.php,然后在控制器中增加:

set('nav_list',array('Home','Photos','About','Contact'));

更新你的模板:

在application/views/template.php中增加:

$nav_item): ?>
  • 这里用到了anchor函数,需要在自动加载配置中增加相关的小助手:

    更新你的控制器:

    增加:

    template->set('nav','About');

    需要注意: 1·如果所有的导航都在一个控制器中,你可以在析构函数中增加通用的导航代码; 2·定义好当前导航的样式,例如:#navigation .selected

    最简单处理多个模板,可以在libraries/Template.php定义多个新的方法来替换已经存在的内容,第二个高级技巧使用自定义的方法:

    set('nav_list','Contact')); $this->load('template',$view,$return); }

    将代码粘贴到控制器中

    template->set('nav','About'); $this->template->set('title','About me'); $this->template->load_main('about');

    相关文章

    文章浏览阅读8.4k次,点赞8次,收藏7次。SourceCodester Onl...
    文章浏览阅读3.4k次,点赞46次,收藏51次。本文为大家介绍在...
    文章浏览阅读1.1k次。- php是最优秀, 最原生的模板语言, 替代...
    文章浏览阅读1.1k次,点赞18次,收藏15次。整理K8s网络相关笔...
    文章浏览阅读1.2k次,点赞22次,收藏19次。此网络模型提供了...
    文章浏览阅读1.1k次,点赞14次,收藏19次。当我们谈论网络安...