crocodile2u / safer-blitz
本包最新版本(1.1.1)没有提供许可证信息。
1.1.1
2018-02-01 14:59 UTC
Requires
- ext-blitz: *
Requires (Dev)
- phpunit/phpunit: ^6.5
This package is auto-updated.
Last update: 2024-09-14 22:54:20 UTC
README
Blitz 模板引擎的一个小扩展,增加了模板继承和自动转义功能。
模板继承
article.tpl:
<article>text</article>
layout.tpl:
<header/> {{ raw(content) }} <footer/>
PHP 代码:
$view = new View("article.tpl"); $view->extend("layout.tpl"); echo $view->parse();
输出结果:
<header/> <article>text</article> <footer/>
自动转义
初始化视图
$view = new \SaferBlitz\View;
在模板中
{{ $some_variable }}
在控制器中
$view->set(["some_variable" => "some nasty XSS attempt: \"><script>alert(\"XSS\");</script>"]); $view->display();
结果
some nasty XSS attempt: "><script>alert("XSS");</script>
要输出未转义的变量,请使用 raw($var) 模板 API
{{ raw($trusted_variable) }}
如果有人对此项目感兴趣,我可能会添加适当的转义方法来转义属性、CSS、JS。不过,目前这超出了我的个人使用范围。