返回顶部

[文摘] Drupal 8 Twig模板教程 - 简介变量、赋值、函数

[复制链接]
awagink 显示全部楼层 发表于 2016-1-28 07:37:54 |阅读模式 打印 上一主题 下一主题
Twig模板是简单的文本文件,它包含标记(tags)、变量(variables)和表达式(expressions),前者用于控制模板的逻辑、后两者在模板中输出对应值的结果。
Twig有两类分隔符:{% ... %}和{{ ... }}。前者用于执行一个表达式,如:{% foo=bar %},后者是输出表达式的值。
变量
应用程序传递变量给模板,用于控制模板的输出。变量同样可以拥有可访问的属性或元素(即:PHP对象的方法或属性,或PHP数组项)。可以使用点或方括号访问它们:
{{ foo.bar }} {{ foo['bar'] }}
如果属性包含特殊字符(如变量使用 - 分开)使用正常的方法则无法赋值,使用attribute函数为该属性赋值:
{# 相当于foo.data-foo #}
{{ attribute(foo, 'data-foo') }}
全局变量
下列变量在模板中总是可用:
_self:引用当前模板
_context:引用当前上下文
_charset:引用当前字符集
变量赋值
在代码块内部使用set标签为变量赋值:
{% set foo = 'foo' %}
{% set foo = [1, 2] %}
{% set foo = {'foo': 'bar'} %}
过滤器
变量可以使用过滤器进行修改。过滤器通过管道符(|)与变量分离,并且在圆括号中可以有任意参数。多个过滤器可以链接,任一过滤器的输出均被应用到下一个。
下例从变量name中移除所有HTML标记并让每个单词的首字母大写。
{{ name|striptags|title }}
下例展示了如何使用过滤器参数,变量list中的每一项被逗号连接在一起:
{{ list|join(',') }}
下例展示了如何为一段代码块应用过滤器,代码块中的字符串会变为大写:
{% filter upper %}
This text becomes uppercase
{% endfilter %}
函数
函数用于生成内容。例如,range函数返回一个整数的算术级列表:
{% for i in range(0, 3) %}
{{ i }},
{% endfor %}

您需要登录后才可以回帖 登录 | 注册

本版积分规则

纳速健身网成立于2006年8月,是国内优秀健身运动网站,现拥浏览人数超30万。网站是集养生、武术、太极拳和健身气功等多种健身项目于一体的多功能交流平台。平台提供大量优质的教学视频、伴奏音乐(太极拳晨练音乐,广场舞音乐,健身气功音乐)、图文教程、运动科普和经验分享,为健身爱好者提供完善的运动指导平台。
  • 纳速QQ群乙:151815303
  • 纳速QQ群丙:79104490
  • 微信交流群:微信好友搜索【nasuwang】加小纳微信进群交流健身知识,备注【纳速】
  •                     或者扫描页面底部右侧二维码添加小纳微信>>>
  • 微信公众号

  • 微信群客服交流

  • Copyright © 2006-2021, 纳速健身网. | | 辽ICP备13002388号-1 辽公安网备21050202000005号公安网备号 纳速武术-乙 QQ