本文实例讲述了Twig模板引擎用法。分享给大家供大家参考,具体如下:
介绍
Twig是一个灵活、高效并且安全的PHP模板引擎。
如果你使用过Smarty、Django或者Jinja这类基于文本的模板引擎的话,那么你会觉得Twig是很自然而然的事情。Twig严格遵守了PHP的信念,同时增加了在模板环境中很有用的函数,这些做法使得Twig不论是对设计师还是开发人员,都是非常友好的。
Twig的主要特征有:
高效:Twig将模板编译成了优化了的PHP文件,与原生的PHP代码比较而言,性能损耗非常小。
安全:Twig使用沙箱(sandbox)模式去运行模板中不被信任的代码。这使得我们可以选择Twig作为那些允许用户修改模板的应用的模板引擎。
灵活:Twig具有灵活的语法分析器和语法解析器,它允许开发人员定义自己的标签(tags)和过滤器(filters),并且创建自己的领域特定语言(DSL,domain specific language)。
必要条件
Twig需要的最低PHP版本为5.2.4。
安装
安装Twig有多种方法。如果你不能确定使用哪一种,那么直接下载压缩包即可。
压缩包安装
从下载页面下载最新的压缩包
解压
将解压出来的文件放置到项目可以访问到的地方。
安装开发版本
安装Subversion或者Git
SVN地址:http://svn.twig-project.org/trunk/, git地址git://github.com/fabpot/Twig.git
使用PEAR包安装
安装PEAR
pearchannel-discoverpear.twig-project.org
pearinstalltwig/Twig (或者pearinstalltwig/Twig-beta)
基础API用法
本节将给出一个Twig的PHP API的简单介绍
使用Twig的第一步是注册它的autoloader:
require_once '/path/to/lib/Twig/Autoloader.php'; Twig_Autoloader::register();
记得用Twig所在路径代替/path/to/lib
注:Twig在类的命名上遵守PEAR的约定,这意味着你可以在自己编写的autoloader中整合对Twig的类的加载。
$loader = new Twig_Loader_String(); $twig = new Twig_Environment($loader); $template = $twig->loadTemplate('Hello {{ name }}!'); $template->display(array('name' => 'Fabien'));
Twig使用加载器(Twig_Loader_String)来定位模板,同时使用环境(Twig_Environment)来储存配置信息。
loadTemplate()方法使用加载器设定的信息来定位和加载模板,同时返回一个模板对象(Twig_Template),该对象可以使用display()方法来进行渲染。
Twig也可以使用文件系统加载器(filesystem loader):
$loader = new Twig_Loader_Filesystem('/path/to/templates'); $twig = new Twig_Environment($loader, array( 'cache' => '/path/to/compilation_cache', )); $template = $twig->loadTemplate('index.html');
更多关于PHP模板相关内容感兴趣的读者可查看本站专题:《PHP模板技术总结》
希望本文所述对大家PHP程序设计有所帮助。
Twig,模板引擎
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。