Twig模板引擎用法入门教程
php  /  管理员 发布于 7年前   339
本文实例讲述了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 基础API用法 本节将给出一个Twig的PHP API的简单介绍 使用Twig的第一步是注册它的autoloader: 记得用Twig所在路径代替/path/to/lib 注:Twig在类的命名上遵守PEAR的约定,这意味着你可以在自己编写的autoloader中整合对Twig的类的加载。 Twig使用加载器(Twig_Loader_String)来定位模板,同时使用环境(Twig_Environment)来储存配置信息。 loadTemplate()方法使用加载器设定的信息来定位和加载模板,同时返回一个模板对象(Twig_Template),该对象可以使用display()方法来进行渲染。 Twig也可以使用文件系统加载器(filesystem loader): 更多关于PHP模板相关内容感兴趣的读者可查看本站专题:《PHP模板技术总结》 希望本文所述对大家PHP程序设计有所帮助。
pearinstalltwig/Twig (或者pearinstalltwig/Twig-beta)require_once '/path/to/lib/Twig/Autoloader.php';Twig_Autoloader::register();
$loader = new Twig_Loader_String();$twig = new Twig_Environment($loader);$template = $twig->loadTemplate('Hello {{ name }}!');$template->display(array('name' => 'Fabien'));
$loader = new Twig_Loader_Filesystem('/path/to/templates');$twig = new Twig_Environment($loader, array('cache' => '/path/to/compilation_cache',));$template = $twig->loadTemplate('index.html');
您可能感兴趣的文章:
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号