-
模板引擎(twig)
- 基本语法
–输出{{ }}
–判断{% %}
–注释{# #}
- 基本语法
-
核心概念
- 用类的继承关系去管理页面之间的关系
-
demo
1. 结构: 头 主要内容 尾代码demo: abstract class BasicPage{ public function getHeader(){} public function getMainContent(){} public function getFooter(){} } 主要内容分类 class WendaPage extends BasicPage{ public $content; public function getMainContent(){ return $this->getLeftMenu() .$this->content .$this->getRightMenu(); } public function getLeftMenu(){ return $this->global_menu .$this->my_menu; } public $global_menu; public $my_menu; public function getRightMenu(){ return $this_new_question_button .$this->tags .$this->weekly_hot_question .$this->top_board; } public $this_new_question_button; public $tags; public $weekly_hot_question; public $top_board; } 标签页结构示意 class TagPage extends WendaPage{ public $content; public function getRightMenu(){ return $this->new_question_button .$this->tags .$this->related_class; } public $related_class; }
2.Twig整合HTML5
3.使用类与类之间的继承关系定义页面
{% block head %}
头部
{% endblock %}
{% block maincontent %}
主要内容
{% endblock %}
{% block footer %}
尾部
{% block %}
{% extends '继承的模板' %}
{% block maincontent %}复写主要内容 {% endblock %}
{% block xxxx %}
{{parent()}}调用父级的内容
{% endblock %}
{% block my_js %}
xxxx.css/xxx.js
{% endblock %}
{{content|upper|reverse}}全部大写加翻转
{{content.a}}判断content是否为数组/对象/方法/函数等等自动检测