安全的PHP模板引擎

时间:2010-08-28 18:40:22

标签: php template-engine

我发现php模板引擎只允许用户定义的功能,或者只允许白名单功能。我的问题是我会让我的用户编辑他们的模板。所以我需要一个安全的模板引擎。

3 个答案:

答案 0 :(得分:5)

twig项目(http://www.twig-project.org/)具有沙箱模式。

答案 1 :(得分:1)

如果你问他们可能会添加白名单,Rain会使用black_list实现沙箱 http://www.raintpl.com/

答案 2 :(得分:1)

如果您只需要条件(if),循环(for)和过滤器,那么我的最小Text-Template类可以完成这项工作:https://github.com/dermatthes/text-template

它是纯粹的正则表达式,不需要文件系统访问,也不需要eval()' d代码。所以它应该是非常安全的。并且它将在< 3ms内解析50kB的模板。