繁体   English   中英

我是否应该使用ENT_QUOTES和htmlspecialchars

[英]Should I use ENT_QUOTES with htmlspecialchars or not

我使用php 5.4.4作为UTF-8运行,我不确定我是否正在使用htmlspecialchars。

我的字符串/变量看起来像这样:

$text = "<p><span class='clx'>By:</span> ".htmlspecialchars($foo)."</span></p>";
echo $text;

我是否需要使用ENT_QUOTES或者仅在必须ENT_QUOTES某些内容时才需要

例如: href="$foo" or id='$foo'

Atm,om只在封闭的html标签内使用htmlspecialchars而不是属性。

只需将字符串内的var连接到<p>标记和</p>标记内

谢谢

在从数据库中获取数据并将其插入到html元素中时,通常应该使用它。 这是因为来自数据的引用不会关闭值引用并弄乱html。

简答:总是。

答案很长:我强烈推荐阅读OWASP的PHP Top 5PHP Security Cheat Sheet

OWASP Top 5涵盖了今天困扰PHP的五个最严重和最常见的安全漏洞:

  • 远程执行代码
  • 跨站点脚本(XSS)[一个htmlspecialchars试图阻止]
  • SQL注入
  • PHP配置
  • 文件系统攻击

它演示了常见的错误和解决方案,对于任何PHP开发人员甚至考虑托管实时网站都非常值得一读。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM