首页 > 代码库 > addslashes,stripslashes

addslashes,stripslashes

官方介绍:
(PHP 4, PHP 5)
addslashes — 使用反斜线引用字符串
返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(’)、双引号(”)、反斜线(\)与 NUL(NULL 字符)。
PHP 5.4 之前 PHP 指令 magic_quotes_gpc 默认是 on, 实际上所有的 GET、POST 和 COOKIE 数据都用被 addslashes() 了。 不要对已经被 magic_quotes_gpc转义过的字符串使用 addslashes(),因为这样会导致双层转义。 遇到这种情况时可以使用函数 get_magic_quotes_gpc()进行检测。

//当magic_quotes_gpc=On的时候,函数get_magic_quotes_gpc()就会返回1//当magic_quotes_gpc=Off的时候,函数get_magic_quotes_gpc()就会返回0$str=$_POST["str"];//读取str的内容赋值给$str变量if(get_magic_quotes_gpc())//如果get_magic_quotes_gpc()是打开的{$str=stripslashes($str);//将字符串进行处理}

 那么,问题来了,现在使用php5.6,get_magic_quotes_gpc() 为 false,可是,直接获取$_POST的值,还是直接给转义了,这是为什么呢???

addslashes,stripslashes