twig介绍
Twig是一款灵活、快速、安全的PHP模板引擎。
快速:Twig将模板编译为纯粹的,最优化的PHP代码。它的开销与常规的PHP代码相比,已经降到了极低。
安全:Twig拥有沙盒模式,用于评估未受信任的模板代码。这使得Twig可以用于允许用户自行修改模板设计的应用程序中。
thinkphp6中使用Twig
立即学习“PHP免费学习笔记(深入)”;
第一步引入ThinkPHP扩展think-twig
composer require yunwuxin/think-twig
第二步将config下template.php中type改为Twig即可使用
Twig规范
在编写Twig模版时,我们推荐使用以下这些官方编码规范:
在起始定界符({{, {%,and {#)的后面加一个空格,并在结尾定界符(}}, %}, and #})前面加一个空格:
{{ foo }} {# comment #} {% if foo %}{% endif %}
在使用空白控制字符时,不要在它和定界符之间添加任何空格:
{{- foo -}} {#- comment -#} {%- if foo -%}{%- endif -%}
在以下操作符前后添加一个空格:比较运算符 (==, !=, , >=,
{{ 1 + 2 }} {{ foo ~ bar }} {{ true ? true : false }}
在散列中的:后添加一个空格,散列和数组的,后也添加一个空格:
{{ [1, 2, 3] }} {{ {'foo': 'bar'} }}
不要在表达式的圆括号前后添加空格:
{{ 1 + (2 * 3) }}
不要在字符串分隔符前后添加空格:
{{ 'foo' }} {{ "foo" }}
不要在以下操作符前后添加空格: |,., .., []:
{{ foo|upper|lower }} {{ user.name }} {{ user[name] }} {% for i in 1..12 %}{% endfor %}
不要在过滤器和函数调用中的圆括号前后添加空格:
{{ foo|default('foo') }} {{ range(1..10) }}
不要在数组和散列的首尾添加空格:
{{ [1, 2, 3] }} {{ {'foo': 'bar'} }}
变量名必须包含小写字母和下划线:
{% set foo = 'foo' %} {% set foo_bar = 'foo' %}
在标签内缩进代码(使用与模板渲染的目标语言相同的缩进方式)
{% block foo %} {% if true %} true {% endif %} {% endblock %}