php中的get_magic_quotes_gpc()函数

原创
2016-07-25 08:58:14 563浏览
本文介绍下,php中有关字符转义的函数,get_magic_quotes_gpc()函数的相关知识,有需要的朋友参考下吧。

php内置函数get_magic_quotes_gpc(),获取php.ini设置中magic_quotes_gpc选项的值。

magic_quotes_gpc选项: 如果magic_quotes_gpc=On,PHP解析器就会自动为post、get、cookie过来的数据增加转义字符“\”,以确保这些数据不会引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。

在magic_quotes_gpc=On的情况下,如果输入的数据包含: 单引号(’)、双引号(”)、反斜线(\)与 NUL(NULL 字符)等字符都会被加上反斜线。 这些转义是必须的,如果这个选项为off,那么就必须调用addslashes函数来为字符串增加转义。

正是因为这个选项必须为On,但是又让用户进行配置的矛盾,在PHP6中删除了这个选项,一切的编程都需要在magic_quotes_gpc=Off下进行了。 这样的环境下,如果不对用户的数据进行转义,后果不仅仅是程序错误而已了。 同样的会引起数据库被注入攻击的危险。

为了迎接php6的到来,以后不要依靠这个选项为on了。

当magic_quotes_gpc=On时,函数get_magic_quotes_gpc()就会返回1。 当magic_quotes_gpc=Off时,函数get_magic_quotes_gpc()就会返回0。 所以,get_magic_quotes_gpc()函数,就是用来得到环境变量magic_quotes_gpc的值。

不过,在PHP6中删除了magic_quotes_gpc选项,可能在php6中这个函数就不存在了。



声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。