编码标准

原文:Coding Standards 翻译:小虾米(QQ:509129)

编码标准

在编写Twig模板时,我们建议您遵循以下官方编码标准:

  • 在分隔符({、{ %和{ #)的开头和分隔符(}、% }和# }结束之前)放置一个(和仅一个)空格。

{{ 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 %}

Last updated