02.03 Twig

Twig也可以说是Symfony系列产品中的一个,它的开发者也是Fabien Potencier。

Symfony 3缺省安装时也会安装Twig。其官方站点是http://twig.sensiolabs.org/

Twig非常轻量级,语法也十分简明。简单说来,它只有两种语法:

  • {{ say something }}表示的是一种输出;
  • {% control something %}表示的是一种控制。
    它还支持模板的嵌入、扩展、继承,以及一些所谓的过滤器(比如将一个日期型变量以某种格式输出)。同时,用户也可以在SF2中编写自己的过滤器。

Twig采用obj.member值这样的方式来访问传递到模板中的变量的属性、成员。所以,如果我们传递一个如下的变量到Twig模板中:

  1. $summary['bc']=100;
  2. $summary['wc']=10000;

在Twig模板中,我们就可以通过这样的语法来访问其成员:

{{summary.bc}}{{summary.wc}}

注意:Twig中所有用到的变量、对象都必须显式赋值。变量的定义可以在Twig内部进行,但更多的时候是应用通过控制器传递给模板的。

更多Twig的实际使用我们会在后续文章中讲到。