PHP中addcslashes与stripcslashes函数用法分析


Posted in PHP onJanuary 07, 2016

本文实例分析了PHP中addcslashes与stripcslashes函数用法。分享给大家供大家参考,具体如下:

在写一个网站的英文版时,写完后填加英文资料,我随便填写时一点问题没有,但每当填加指定的内容时却填加不上,也不报错,我查看了数据库,发现这个字段用的是“TEXT”数据数型,我以为是内容过长的原因,于是我把数据类型改成了“longtext”,但提交时发现还是出现同样的问题。下面我们给大家介绍一下addcslashes函数吧!

后来请教同事,同事发现在是英文中带标点“'”的原因,MySQL执行到此处后自动认为语句结束,所以才填加不上。既然找出来了问题那就得找出对应的解决方法,那就是在文本内容中的“'”前全部加上转义字符“\”,正好PHP中提供了自动在字符串中加入或去除转义字符的函数addcslashes和stripcslashes,于是加上测试后,果然问题解决!由此可见,我平日写程序时不够严禁,总是会忽略这样那样的细节问题,如果被HACKER发现这些问题加一利用,网站基本就OVER了,所以大家一定要引以为戒,不要和我犯同样的错误哦。

下面简单介绍这两个函数的用法:

string addcslashes(string str,string charlist)

第1个参数str为待失物原始字符串

第2个参数charlist说明需要在原始串的哪些字符前加上字符 “\”。

string stripcslashes(string str)

去掉字符串中的“\”。

另外,使用addslashes函数也可直接针对“'”进行转义处理。

示例如下:

<?php
$sql = "update book set bookname='let's go' where bookid=1";
 echo $sql."<br/>";
 $new_sql = addcslashes($sql,"'");
 echo $new_sql."<br/>";
 $new_sql_01 = stripcslashes($new_sql);
 echo $new_sql_01."<br/>";
 echo addslashes($sql);
?>

运行结果如下:

update book set bookname='let's go' where bookid=1
update book set bookname=\'let\'s go\' where bookid=1
update book set bookname='let's go' where bookid=1
update book set bookname=\'let\'s go\' where bookid=1

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
Apr 28 PHP
PHP乱码问题,UTF-8乱码常见问题小结
Apr 09 PHP
windwos下使用php连接oracle数据库的过程分享
May 26 PHP
linux下编译安装memcached服务
Aug 03 PHP
php输出金字塔的2种实现方法
Dec 16 PHP
PHP中preg_match函数正则匹配的字符串长度问题
May 27 PHP
常见的四种POST 提交数据方式(小总结)
Oct 08 PHP
自制PHP框架之模型与数据库
May 07 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
Sep 04 PHP
Laravel框架查询构造器 CURD操作示例
Sep 04 PHP
解决tp5在nginx下修改配置访问的问题
Oct 16 PHP
分享几种好用的PHP自定义加密函数(可逆/不可逆)
Sep 15 PHP
使用php+swoole对client数据实时更新(一)
Jan 07 #PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
Jan 07 #PHP
PHP中ltrim与rtrim去除左右空格及特殊字符实例
Jan 07 #PHP
jQuery向下滚动即时加载内容实现的瀑布流效果
Jan 07 #PHP
PHP使用trim函数去除字符串左右空格及特殊字符实例
Jan 07 #PHP
PHP结合Jquery和ajax实现瀑布流特效
Jan 07 #PHP
我整理的PHP 7.0主要新特性
Jan 07 #PHP
You might like
PHP 超链接 抓取实现代码
2009/06/29 PHP
实例讲解php数据访问
2016/05/09 PHP
php提取微信账单的有效信息
2018/10/01 PHP
微信企业转账之入口类分装php代码
2018/10/01 PHP
PHP中16个高危函数整理
2019/09/19 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
2020/02/27 PHP
FF IE兼容性的修改小结
2009/09/02 Javascript
初窥JQuery-Jquery简介 入门了解篇
2010/11/25 Javascript
js中的this关键字详解
2013/09/25 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
超链接的禁用属性Disabled使用示例
2014/07/31 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
AngularJS语法详解
2015/01/23 Javascript
vue多级多选菜单组件开发
2020/09/08 Javascript
基于javascript实现的购物商城商品倒计时实例
2016/12/11 Javascript
JS百度地图搜索悬浮窗功能
2017/01/12 Javascript
Node接收电子邮件的实例代码
2017/07/21 Javascript
微信小程序获取手机网络状态的方法【附源码下载】
2017/12/08 Javascript
vue拦截器实现统一token,并兼容IE9验证功能
2018/04/26 Javascript
vue的toast弹窗组件实例详解
2018/05/14 Javascript
vue-router之nuxt动态路由设置的两种方法小结
2018/09/26 Javascript
Bootstrap告警框(alert)实现弹出效果和短暂显示后上浮消失的示例代码
2020/08/27 Javascript
讲解Python中运算符使用时的优先级
2015/05/14 Python
python实现颜色空间转换程序(Tkinter)
2015/12/31 Python
Python的Django框架中forms表单类的使用方法详解
2016/06/21 Python
python字符串中的单双引
2017/02/16 Python
Python 中 Virtualenv 和 pip 的简单用法详解
2017/08/18 Python
pandas中去除指定字符的实例
2018/05/18 Python
python读取目录下所有的jpg文件,并显示第一张图片的示例
2019/06/13 Python
HTML5表格_动力节点Java学院整理
2017/07/11 HTML / CSS
美国用餐电影院:Alamo Drafthouse Cinema
2020/01/23 全球购物
广告学专业求职信
2014/06/19 职场文书
关于诚信的活动方案
2014/08/18 职场文书
一文带你探究MySQL中的NULL
2021/11/11 MySQL
奥特曼十大神器:奥特手镯在榜,第一是贝利亚的神器
2022/03/18 日漫
HTML5基础学习之文本标签控制
2022/03/25 HTML / CSS