Twig模版引擎简介

这是Twig的文档,Twig是一个快速、安全、灵活的PHP模板引擎。Twig被广泛运用于Web/PHP项目的开发,更多时候是集成到一些 PHP框架中,如Symfony 1.x、Symfony 2.x、Zend Framework 2.x、Yii Framework 2.x、Slim Framework 等等,当然你也可以在不使用任何框架的情况下直接使用Twig模版引擎来构建你的Web项目。

如果你接触过其它的一些基于文本的模版语言,如Smarty、Django或Jinja,你应该有一种宾至如归的感觉。Twig既坚持了PHP的原则又为模版环境添加了非常有用的功能,对设计师和开发人员都非常友好。她的关键特性如下:

快速:Twig把模版编译成完全优化的PHP代码,相比于常规PHP代码,开销减少到最低限度。

安全:Twig有一个沙盒模式用于评估不可信的模板代码。这使得Twig可以被用作那些允许用户修改模版的应用程序的模版语言。

灵活:Twig是由一个灵活的词法分析器和语法分析器驱动。这允许开发人员定义自己的自定义标签和过滤器,并创建自己的DSL。

前提条件

Twig至少需要PHP5.2.4来运行。

安装

推荐的安装Twig的方式是通过Composer安装:

1 composer require “twig/twig:1.*”

要了解更多关于其他的安装方法,请阅读《安装Twig模版引擎-Twig使用指南》;它也解释了如何安装Twig的C扩展。

基本API用法

本节为您提供了一个Twig 的 PHP API 的简单介绍。

12

3

4

5

6

require_once ‘/path/to/vendor/autoload.php’; 

$loader = new Twig_Loader_String();

$twig = new Twig_Environment($loader);

 

echo $twig->render(‘Hello {{ name }}!’, array(‘name’ => ‘Fabien’));

Twig使用一个加载器(Twig_Loader_String)来定位模板,和一个环境(Twig_Environment)来存储配置信息。 render() 方法通过传递过来的第一个参数来加载模板,通过传递过来的第二个参数(也就是变量)来渲染它。作为模板通常存储在文件系统中,Twig还配备了一个文件系 统加载器:

12

3

4

5

6

$loader = new Twig_Loader_Filesystem(‘/path/to/templates’);$twig = new Twig_Environment($loader, array(

‘cache’ => ‘/path/to/compilation_cache’,

));

 

echo $twig->render(‘index.html’, array(‘name’ => ‘Fabien’));

如果你不使用Composer,你可以使用Twig内置的自动加载器:

12 require_once ‘/path/to/lib/Twig/Autoloader.php’;Twig_Autoloader::register();

原文标题: Twig模版引擎简介-Twig使用指南

原文链接: http://loiy.net/post/753.html

发表评论