php 深入理解addslashes函数

php addslashes函数对于很多人来说并不陌生,但很大部分人只是了解皮毛,只知道addslashes函数是在特定字符前面加上反斜杠,本文章将带大家深入理解php addslashes函数的使用方法。


php addslashes函数的作用是在预定义的字符前面加上反斜杠,这些预定义字符包括:


单引号(')
双引号(")
反斜杠(\)
NULL
addslashes函数经常使用在向数据库插入数据时,比如有一个字符串

/*by http://www.manongjc.com */ 
$str="my name's wxp";


现在要将这个字符串插入到数据库表中,由于该字符串有单引号',这样很可能与mysql拼接字符串的单引号'冲突,导致SQL语句不正确,也就无法正常执行插入操作,此时我们需要使用addslashes函数处理这个字符串。如:


/*by http://www.manongjc.com/article/1104.html */ 
$str="my name's wxp";
echo addslashes($str);//输出my name\'s wxp


然后在拼接mysql字符串:


/*by http://www.manongjc.com */  
$sql="insert into student(student_name)values('".addslashes($str)."')";
mysql_query($sql);


此时字符串被插入到数据库,那么大家是否知道插入的字符串是带反斜杠还是不带反斜杠呢?恐怕很多人都会认为肯定是带反斜杠的字符串。其实这个答案是错误的,插入的字符串是没有带反斜杠。至于为什么插入的字符串在数据库中是没有加反斜杠,请大家继续看下面讲解。


 


如果字符串$str="my name's wxp"是使用POST和GET提交的数据,这个时候插入数据库中的数据是带反斜杠的,由此可知addslashes只是在POST和GET数据插入数据库时才会把反斜杠同时插入到数据库,其他情况下不会将反斜杠插入到数据库。


原文地址:http://www.manongjc.com/article/1104.html


其他阅读:

php如何创建cookie和获取cookie的值 php源码之使用cookie来创建网页计数器 php一个设置Cookie的简单实例 php mysql_tablename获取表名 php mysql_stat()函数使用实例

转载于:https://www.cnblogs.com/myhomepages/p/6010074.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值