CakePHP有一个名为h的全局函数。这是一种方便htmlspecialchars的方法。CakePHP还有一个名为Sanitize的实用程序,它有一个名为html的方法。以下是其描述的一部分:
此方法准备用户提交的数据,以便在HTML中显示。如果您不希望用户破坏您的布局或在HTML页面中插入图像或脚本,这尤其有用。
什么时候应该分别使用?一个比另一个好吗?
发布于 2013-06-18 03:26:10
Sanitize::html()更通用:它允许您完全剥离HTML (通过remove选项),并允许您指定它如何处理引用。
请参阅源代码:
h():http://api.cakephp.org/2.3/source-function-h.html#160-199
Sanitize::html():http://api.cakephp.org/2.3/source-class-Sanitize.html#83-122
编辑:
h():调用htmlspecialchars()
Sanitize::html():调用htmlentities()
有关差异的讨论,请参见:htmlentities() vs. htmlspecialchars()
https://stackoverflow.com/questions/17159548
复制相似问题