php addslashes函数的作用是在预定义的字符前面加上反斜杠,这些预定义字符包括:
1、单引号(')
2、双引号(")
3、反斜杠(\)
4、NULL
addslashes函数经常使用在向数据库插入数据时,比如有一个字符串
$str="my name's wxp";
现在要将这个字符串插入到数据库表中,由于该字符串有单引号',这样很可能与mysql拼接字符串的单引号'冲突,导致SQL语句不正确,也就无法正常执行插入操作,此时我们需要使用addslashes函数处理这个字符串。如:
$str="my name's wxp";
echo addslashes($str);//输出my name\'s wxp
然后在拼接mysql字符串:
$sql="insert into student(student_name)values('".addslashes($str)."')";
mysql_query($sql);
如果字符串$str="my name's wxp"是使用POST和GET提交的数据,这个时候插入数据库中的数据是带反斜杠的,可知addslashes只是在POST和GET数据插入数据库时才会把反斜杠同时插入到数据库,其他情况下不会将反斜杠插入到数据库。