模板组件
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 2.2,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。
模板组件
模板组件提供了所需的所有工具构建任何类型的模板系统。
它提供了一个基础设施来加载模板文件和可选地监控他们的变化。它还提供了一种混凝土模板引擎使用PHP实现额外的工具来逃避和分离成块模板和布局。
安装
您可以安装组件在两个不同的方面:
- 安装它通过作曲家(
ob娱乐下载symfony /模板
在Packagist); - 使用官方的Git存储库(https://github.com/ob娱乐下载symfony/Templating)。
使用
的PhpEngine类是组件的入口点。它需要一个模板名称解析器(TemplateNameParserInterface)模板名称转换为模板引用(TemplateReferenceInterface)。它还需要一个模板加载程序(LoaderInterface)使用模板引用来查找和加载模板:
1 2 3 4 5 6 7 8 9
使用ob娱乐下载\组件\模板\PhpEngine;使用ob娱乐下载\组件\模板\TemplateNameParser;使用ob娱乐下载\组件\模板\加载程序\FilesystemLoader;美元加载程序=新FilesystemLoader (__DIR__。' /视图/ %名称% ');美元模板=新PhpEngine (新TemplateNameParser (),美元加载程序);回声美元模板- >呈现(“hello.php”,数组(“firstname”= >“法”));
1 2
< !——视图/你好。php - - >你好,< ? php回声美元firstname? >!
的呈现()方法解析视图/ hello.php
文件并返回输出文本。第二个参数的渲染
是一个数组变量的模板中使用。在本例中,结果将是你好,法比安!
。
的美元的观点
变量
在所有模板的解析PhpEngine
,你得到一个神秘的变量美元的观点
。该变量保存当前PhpEngine
实例。这意味着你获得一些方法,使你的生活更容易。
包括模板
分享模板代码的一个片段的最好办法是创建一个模板,可以包括其他模板。随着美元的观点
变量的一个实例PhpEngine
,你可以使用渲染
方法(最初用于呈现模板)在模板来呈现另一个模板:
1 2 3 4
< ? php美元的名字=数组(“法”,……)? >< ? phpforeach(美元的名字作为美元的名字):? >< ? php回声美元视图- >呈现(“hello.php”,数组(“firstname”= >美元的名字))? >< ? phpendforeach? >
输出逃离
呈现变量时,你应该摆脱这样HTML或JavaScript代码不写入页面。这将防止XSS攻击。要做到这一点,使用escape ()方法:
1
< ? php回声美元视图- >逃避(美元firstname)? >
默认情况下,escape ()
方法假设变量输出在一个HTML上下文。第二个参数可以改变环境。例如,输出JavaScript内的东西,使用js
背景:
1
< ? php回声美元视图- >逃避(美元var,js的)? >
组件有一个HTML和JS逃脱者。你可以注册自己的排放器使用setEscaper ()方法:
1 2 3 4 5
美元模板- >setEscaper (“css”,函数(美元价值){/ /……所有CSS逃离返回美元escapedValue;});