Heim > Backend-Entwicklung > PHP-Tutorial > php中字符安全过滤函数有哪些?

php中字符安全过滤函数有哪些?

WBOY
Freigeben: 2016-07-25 08:51:44
Original
988 Leute haben es durchsucht
php中字符安全过滤函数大全,php防止sql注入攻击与xss攻击的常用函数,包括mysql_real_escape_string()、addslashes()、htmlentities()、htmlspecialchars()、strip_tags()等函数。

php函数,帮助防止出现像sql注入攻击,xss攻击等问题。

1、mysql_real_escape_string() 这个函数曾经对于在PHP中防止SQL注入攻击提供了很大的帮助,它对特殊的字符,像单引号和双引号,加上了“反斜杠”,确保用户的输入在用它去查询之前已经是安全的了。但你要注意你是在连接着数据库的情况下使用这个函数。 但现在mysql_real_escape_string()这个函数基本不用了,所有新的应用开发都应该使用像PDO这样的库对数据库进行操作,也就是说,我们可以使用现成的语句防止SQL注入攻击。

2、addslashes() 这个函数和上面的mysql_real_escape_string()很相似,同样是为特殊字符加上反斜杠,但要注意当设置文件php.ini中的 magic_quotes_gpc 的值为“on”时,不要使用这个函数。magic_quotes_gpc = on时,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串 使用 addslashes(),因为这样会导致双层转义。

可以通过php中get_magic_quotes_gpc()函数检查这个变量的值。

3、htmlentities() 这个函数对过滤用户输入数据非常有用,它可以把字符转换为 HTML 实体。比如,当用户输入字符“

4、htmlspecialchars() 这个函数跟上面的很相似,HTML中的一些字符有着特殊的含义,如果要体现这样的含义,就要被转换为HTML实体,这个函数会返回转换后的字符串。

5、strip_tags() 这个函数可以去除字符串中所有的HTML,JavaScript和PHP标签,当然你也可以通过设置该函数的第二个参数,忽略过滤一些特定的标签。

6、intval() intval其实不属于过滤的函数,它的作用是将变量转成整数类型。 在需要得到一个整数的参数时,可以用这个函数让你的php代码更安全,特别是当在解析id,年龄这样的整数形数据时。



Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage