框架入门 中级篇 (中)twig模板引擎
来源:互联网 发布:数据库事务特性 编辑:程序博客网 时间:2024/06/05 01:32
我们的框架已经相当完善了
那么我们的php视图层在数据渲染的时候还是需要大量的php标签来完成
这样对于使用这个框架但不懂php语言的前端工程师来说 是一件非常糟糕的体验
为了解决这个问题 我们有了模板引擎这个概念
我们首先看看使用模板引擎的好处
1.安全,比如默认转义输出
2.规范,防止团队中有人在视图中写大量的逻辑代码
3.性能,据说可以提高性能
4.可读,个人认为twig或者laravel的blade引擎比php可读性好
那模板引擎的好处这么多 我们如何让我们的框架使用模板引擎呢
接下来我们就来为我们的框架加载一个 twig模板引擎
首先在我们的composer.json当中添加一行
"twig/twig":"*"
跟之前的一样
然后执行命令行
composer update
我们的twig引擎就让composer 自动安装好了
那么 怎么用呢
首先我们重写一下我们之前写的display方法
public function display($file) { $file = APP . '/views/' . $file; if(is_file($file)) { \Twig_Autoloader::register(); $loader = new \Twig_Loader_Filesystem(APP."/views"); $twig = new \Twig_Environment($loader, array( 'cache' => IMOOC.'/log/twig', 'debug' => DEBUG )); $template = $twig->loadTemplate('index.html'); $template->display($this->assign?$this->assign:''); } }
然后在控制器中加入如下代码
$data = "Hello world";$this->assign("data",$data);$this->display("index.html");
视图层我们使用模板引擎
{{ data }}
就可以输出我们的变量了
接着我们来引入一个layout 视图公共部分
<html><body><header>header</header><content> {% block content %} {% endblock %}</content><footer>footer</footer></body></html>
然后我们在需要引入layout视图文件的地方
`
{% extends "layout.html" %}
{% block content %}
{{ data }}
{% endblock %}
继承那个视图
这样的们的twig模板引擎就完成了
我们的框架也相当完善了`
0 0
- 框架入门 中级篇 (中)twig模板引擎
- 框架引入twig模板引擎
- MVC框架的封装(十一)twig模板引擎
- 学习封装mvc框架(十一)twig模板引擎
- TWIG 模板引擎 快速入门手册
- PHP模板引擎 twig
- twig模板引擎
- 框架本内容填充之twig模板引擎
- Twig模板语言入门
- symphony 框架下的Twig模版引擎语言入门
- PHP模板引擎twig介绍
- MVC封装(十一)模板引擎(twig)
- mvc的扩展5(twig模板引擎)
- symfony框架twig模板中获取版本号信息
- 简单的mvc twig模板引擎和框架的结束语的简介
- mvc用composer加载twig模板引擎
- 浅谈MVC之twig模板引擎
- mvc构建开发twig模板引擎
- 深入理解calcBackProject
- 学习网页设计,你必须要去学习的知识点!
- Vim
- 10.03
- 设计模式(一)
- 框架入门 中级篇 (中)twig模板引擎
- 51nod 1183 编辑距离
- leetcode-013-Roman to Integer
- 长恨歌(白居易)
- 下班后的1小时, 会影响到你的工作和生活
- CUDA学习--内存处理之全局内存(5)
- Avalon,继Angular之后
- ContentProvider简单使用 -- Android学习之路
- python挑战之level 30