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
相关资源:Android MVC框架 网络封装