#代码规范
在编写Twig模版时,我们推荐使用以下这些官方编码规范:
* 在起始定界符(``{{``, ``{%``,
and ``{#``)的后面加一个空格,并在结尾定界符(``}}``, ``%}``, and ``#}``)前面加一个空格:
~~~
{{ foo }}
{# comment #}
{% if foo %}{% endif %}
~~~
在使用空白控制字符时,不要在它和定界符之间添加任何空格:
{{- foo -}}
{#- comment -#}
{%- if foo -%}{%- endif -%}
* 在以下操作符前后添加一个空格:比较运算符 (``==``, ``!=``, ``<``, ``>``, ``>=``, ``<=``), 数学运算符 (``+``, ``-``, ``/``, ``*``, ``%``, ``//``, ``**``), 逻辑运算符 (``not``, ``and``, ``or``), ``~``, ``is``, ``in``, 以及三元运算符(``?:``):
~~~
{{ 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 %}
~~~
- 首页
- 目录
- 介绍
- 安装
- 面向模板设计师
- 面向开发者
- 扩展 Twig
- Twig的内部构建
- 弃用的特性
- 使用技巧
- 代码规范
- 标签 tags
- autoescape
- block
- do
- embed
- extends
- filter
- flush
- for
- from
- if
- import
- include
- macro
- sandbox
- set
- spaceless
- use
- verbatim
- 过滤器
- abs
- batch
- capitalize
- convert_encoding
- date
- date_modify
- default
- escape
- first
- format
- join
- json_encode
- keys
- last
- length
- lower
- merge
- nl2br
- number_format
- raw
- replace
- reverse
- round
- slice
- sort
- split
- striptags
- title
- trim
- upper
- url_encode
- 函数
- attribute
- block
- constant
- cycle
- date
- dump
- include
- max
- min
- parent
- random
- range
- source
- template_from_string
- 测试
- constant
- defined
- divisibleby
- empty
- even
- iterable
- null
- odd
- sameas