当前位置:  开发笔记 > 编程语言 > 正文

转义数据 - stripslashes,strip_tags

如何解决《转义数据-stripslashes,strip_tags》经验,为你挑选了2个好方法。

为什么很多人在字符串上使用这两个函数?我看到了很多stripslashes(strip_tags($field));(或者反过来)

是不是strip_tags可以过滤任何xss的东西和这样的东西?



1> meagar..:

转义数据与strip_tags或无关stripslashes.这些函数从字符串中过滤掉某些字符,而"转义"则对某些字符进行编码,因此它们不会被浏览器或数据库解释.

您可以使用strip_tags从浏览器中删除发送到PHP的字符串中的HTML标记.更好的是,strip_tags如果您htmlspecialchars在将数据发送回浏览器时用于转义可能分隔标记的任何字符,您还可以安全地存储相同的数据而不通过它.

stripslashes从字符串中删除斜杠,如果启用了"魔术引号",您只需要担心它.从早期的时候开始,当PHP开发人员天真地假设来自浏览器的每一段数据都指向数据库并且开发人员不能被信任以逃避数据库本身时.



2> Pekka suppor..:

strip_tags不足以过滤任何xss的东西吗?

不.过滤XSS内容的唯一安全方法是htmlspecialchars(),虽然我看到许多建议strip_tags()另外使用.

请参阅此问题中的讨论:阻止XSS和SQL注入就像这样简单......

什么stripslashes是应该在这方面做的,我不知道.这可能是试图撤消现在已弃用的魔术引号函数的效果 - 但是如果不首先检查是否启用了特定功能,则不应该应用此功能.

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有