免责声明
这不是关于我们是否应该为数据库输入转义的问题。这是严格查看标题中三个功能之间的技术差异。
有这个问题htmlentities()
讨论和之间的区别htmlspecialchars()
。但是,它并没有真正讨论filter_var()
,我在 Google 上找到的信息更像是“确保在回显之前避开用户输入!”
我的问题是:
- 为什么都
htmlspecialchars()
和htmlentities()
常用过来filter_var()
? - 使用会不会影响性能
filter_var()
? - 是
filter_var()
不是像其他两个选项一样安全? - 是否有任何其他原因不使用以下内容对用户输入进行编码之前
echod
filter_var($var, FILTER_SANITIZE_FULL_SPECIAL_CHARS);