zend 框架中的 $this->escape() 实际上是做什么的?
我需要帮助来理解 Zend Framework 中辅助函数的实际操作。
在将字符串打印到模板中之前,我需要有人向我解释 $this->escape($string)
对传递给它的字符串实际上做了什么。
I need help in understanding the actual actions of a helper function in Zend Framework.
I need someone to explain to me what $this->escape($string)
actually does to the string passed to it before printing the string into the template.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
$this->escape()
根据您可以使用$this->setEscape('functionname')
提供的设置转义字符串,默认情况下它是 PHP 的 htmlspecialchars功能。http://framework.zend.com/manual/en/zend.view .scripts.html
$this->escape()
escapes a string according to settings you can provide with$this->setEscape('functionname')
, by default it is PHP's htmlspecialchars function.http://framework.zend.com/manual/en/zend.view.scripts.html
It calls the htmlspecialchars PHP function.
It calls the htmlspecialchars PHP function.
在 PiKe 项目中,我们构建了一个自定义流包装器,它会自动转义所有视图变量,默认情况下可以安全地防范 XSS,同时对性能影响最小!您仍然可以通过以下方式获取 RAW 值:
注意“~”字符。查看 http://code.google.com/p/php-pike/wiki/ Pike_View_Stream
Over at the PiKe project we build a custom stream wrapper that automatically escapes all view variables to be safe by default against XSS, with a MINIMAL performance hit! You can still get the RAW value with:
<?=~ $variable ?>
Notice the "~" character. Checkout http://code.google.com/p/php-pike/wiki/Pike_View_Stream