CakePHP:h()与Sanitize::html()的比较
CakePHP有一个名为的全局函数。对于CakePHP:h()与Sanitize::html()的比较,cakephp,sanitization,Cakephp,Sanitization,CakePHP有一个名为的全局函数。对于htmlspecialchars,这是一种方便的方法。CakePHP还有一个名为的实用程序,它有一个名为的方法。以下是其部分描述: 此方法准备用户提交的数据以在HTML中显示。这 如果您不希望用户破坏您的 在HTML页面中布局或插入图像或脚本 什么时候使用?一个比另一个好吗?Sanitize::html()更通用:它允许您完全剥离html(通过remove选项),并允许您指定它如何处理报价 请参阅源代码: h(): 清理::html(): 编辑: h():
htmlspecialchars
,这是一种方便的方法。CakePHP还有一个名为的实用程序,它有一个名为的方法。以下是其部分描述:
此方法准备用户提交的数据以在HTML中显示。这
如果您不希望用户破坏您的
在HTML页面中布局或插入图像或脚本
什么时候使用?一个比另一个好吗?Sanitize::html()
更通用:它允许您完全剥离html(通过remove
选项),并允许您指定它如何处理报价
请参阅源代码:h()
:清理::html()
:
编辑:h()
:调用htmlspecialchars()
Sanitize::html()
:调用htmlentities()
有关差异的讨论,请参见:实际上,
Sanitize::html()
调用htmlentities
。必须已休眠。:)有关两个PHP函数之间的差异,请参见此问题:。两者都可以防止XSS,因此出于安全目的,任何一种都可以。只需在视图层中使用h(),如文档示例中所述: