怎样封装一个自己的mvc框架(七)
mvc框架封装到了最后一步,我们需要引入一个模板引擎twig
同样修改composer文件,在require中加入一行
"twig/twig":"*"
然后命令行输入
composer update
这样就加载了twig引擎
我们可以打开http://twig.sensiolabs.org/doc/api.html网站查看手册
twig模板引擎最优秀的一点就是模板的套用
首先我们在核心文件中写一个方法实例化模板引擎
//视图层显示方法
public function view()
{
//实例化模板引擎
\Twig_Autoloader::register();
$loader = new \Twig_Loader_Filesystem(APP."/views");
$twig = new \Twig_Environment($loader, array(
'cache' => ROOT.'/log/twig',
'debug'=>DEBUG
));
return $twig;
}
之前的assign和display方法可以去掉了
我们现在在控制器中调用的时候只需要
public function index(){
$data="It is work!";
//$title="这是视图文件";
$view=$this->view();
echo $view->render('index/index.html',['data'=>$data]);
}
即可显示视图文件并传值
然后在模板文件中
<h3>{{ data }}</h3>
即可输出变量
刚才也说了,twig引擎最出色的是模板的套用
我们首先创建一个layout.html文件
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
{% block content %}
<!-- 这里是内容 -->
{% endblock %}
</body>
</html>
然后在其他的视图中我们只需要这样写
{% extends "layout.PHP" %}
{% block content %}
<h3>{{ data }}</h3>
{% endblock %}
即可套入
是不是很方便?现在我们的一个简易的mvc框架已经完成了,接下开让我们做一个简单的增删改查来检验一下我们的框架功能!
转载于:https://www.cnblogs.com/quanzhiguo/p/7363410.html
怎样封装一个自己的mvc框架(七)相关推荐
- 怎样封装一个自己的mvc框架(五)
这一节 我们的框架需要完善一项功能, 那就是日志功能,通过查看日志我们可以查看之前操作的控制器! 首先我们需要创建一个日志类 需要有一下几个步骤 * 1.确定日志存储方式 * * ...
- 在Java中搭建一个简单的MVC框架
搭建一个简单的Java MVC框架 一 . 前言 二. 代码实现 1. 思路分析 2. 代码实现 2.1 Controller注解 2.2 RequestMapping注解 2.3 UserContr ...
- 手把手教你封装一个自己的数据库框架~
本教程将给大家深度剖析数据库框架底层实现的原理,然后采用泛型.反射.注解机制来教大家做一个自己的数据库框架. 前面学习了很多教程,我们转换了一下风格,开始从一个点切入,做更加深入的提升,这也是符合人的 ...
- 自己动手写一个简单的MVC框架(第二版)
一.ASP.NET MVC核心机制回顾 在ASP.NET MVC中,最核心的当属"路由系统",而路由系统的核心则源于一个强大的System.Web.Routing.dll组件. 在 ...
- 搭建一个简单的MVC框架
背景 为何要用MVC框架?首先我们知道不用框架的话,在javaweb项目中每个请求都要写一个servlet,并且要在web.xml中对每个servlet类的映射作配置,不方便开发,因此引入MVC框架. ...
- 学写一个 Java Web MVC 框架(一)
当前我们介绍的是一个简单的MVC,用8个类即实现完整Spring MVC核心功能,外加其他实用的小功能.它是怎么实现的呢?让我们来一探究竟! 源码在:https://gitee.com/sp42_ad ...
- 学写一个 Java Web MVC 框架(四)
访问请求处理 当客户端发送一个请求,被自定义的过滤器MvcDispatcher拦截,解析请求地址和参数对象跳转到一个控制器的方法中,然后执行进行逻辑处理后返回响应内容给MvcDispatcher输出, ...
- 自己动手写一个简单的MVC框架(第一版)
一.MVC概念回顾 路由(Route).控制器(Controller).行为(Action).模型(Model).视图(View) 用一句简单地话来描述以上关键点: 路由(Route)就相当于一个公司 ...
- 仿照源码,手写一个自定义 Spring MVC 框架
毫无疑问,Spring 框架目前已经成为 Java 开发的行业标准,Spring MVC 作为其 Web 解决方案,是所有 Java 开发者都必须掌握的基本技能,理解其底层原理,才能更好地应用它进行实 ...
最新文章
- 干货 | 一文搞懂极大似然估计
- GDI+中发生一般性错误
- react-native 安卓支持 gif动态图
- 自己写的sqlHelper 以及读取配置文件
- 气体润滑轴承matlab分析,气体润滑轴承的研究与发展
- JSON字符串和对象 的转换
- 在春意盎然的季节里初识GIT
- QT学习笔记(七):定时器事件的3种常用使用方式
- 在mysql命令行下执行sql文件
- odbc数据源的配置
- DIV+CSS样式表命名的规则方法
- PHP常用系统设置整理
- 航模飞机设计基础知识
- 开箱:阿里技术人在读什么书?
- Mac野外动物高清动态桌面壁纸
- 《Unsupervised Monocular Depth Learning in Dynamic Scenes》论文笔记
- 用手机当电脑摄像头的方法
- 给创业公司CEO的临别赠言
- O2O之下,腾讯觊夺移动支付大数据,手Q支付出战支付宝
- linux power manager模型