MVC框架的封装(十一)模板引擎

来源:互联网 发布:matlab求海森矩阵 编辑:程序博客网 时间:2024/05/15 23:49

接下来我们要做的便是,使用composer加载一个模板引擎。
首先还是一样在composer.json里加入

"twig/twig":"*"

然后执行我们的更新命令

composer update

然后我们只需要修改一下imooc.php中的display方法就可以了,

public function display($file)      {          $file = APP.'/views/'.$file;         // p($file);          //p($this->assign);exit();          if(is_file($file)){                 //p($this->assign);exit();                 \Twig_Autoloader::register();                 $loader = new \Twig_Loader_Filesystem(APP.'/views');                 $twig = new \Twig_Environment($loader,array(                     'cache' => MVC.'/log/twig',                     'debug' => DEBUG                  ));                 $template = $twig->loadTemplate('index.html');                  $template->display($this->assign?$this->assign:'');          }      }

这样我们的模板引擎就加载完成了,接下来我们便测试一下,我们首先在控制器中定义一个字符窜,

$data='Hello World';

然后我们通过一个方法暂存起来,

$this->assign('data',$data);

然后我们在通过display来显示这个文件。

$this->display('index.html);

完成之后我们来在视图新建一个布局页面 ,我们写一些简单的html

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title></head><body>    <content>        {% block content %}        {% endblock%}    </content>    <footer>footer</footer></body></html>

然后我们在其他视图进行页面书写的时候直接可以使用

{% extends "la.html"%}{% block content %}{{ data }}{% endblock%}

然后我们的功能就都结束了 。

0 0
原创粉丝点击