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类的使用 实例代码讲解
Dec 28 PHP
php 各种应用乱码问题的解决方法
May 09 PHP
PHP 一个随机字符串生成代码
May 26 PHP
php表单提交问题的解决方法
Apr 12 PHP
PHP中全面阻止SQL注入式攻击分析小结
Jan 30 PHP
PHP基础学习之流程控制的实现分析
Apr 28 PHP
phpstorm编辑器乱码问题解决
Dec 01 PHP
Yii中Model(模型)的创建及使用方法
Dec 28 PHP
PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )
Jul 09 PHP
Linux平台PHP5.4设置FPM线程数量的方法
Nov 09 PHP
PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】
Jun 08 PHP
PHP ob缓存以及ob函数原理实例解析
Nov 13 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数组实现根据某个键值将相同键值合并生成新二维数组的方法
2017/04/26 PHP
Laravel 5.2 文档 数据库 ―― 起步介绍
2019/10/21 PHP
js解析与序列化json数据(一)json.stringify()的基本用法
2013/02/01 Javascript
javascript 三种方法实现获得和设置以及移除元素属性
2013/03/20 Javascript
javascript中全局对象的parseInt()方法使用介绍
2013/12/19 Javascript
js识别不同浏览器基于userAgent做判断
2014/07/29 Javascript
js 中获取制定的cook信息实现方法
2016/11/19 Javascript
JS 实现随机验证码功能
2017/02/15 Javascript
基于JavaScript实现百度搜索框效果
2020/06/28 Javascript
windows系统下更新nodejs版本的方案
2017/11/24 NodeJs
解决使用Vue.js显示数据的时,页面闪现原始代码的问题
2018/02/11 Javascript
vue移动UI框架滑动加载数据的方法
2018/03/12 Javascript
Angular父子组件通过服务传参的示例方法
2018/10/31 Javascript
selenium 反爬虫之跳过淘宝滑块验证功能的实现代码
2020/08/27 Javascript
Vue封装Axios请求和拦截器的步骤
2020/09/16 Javascript
vue切换菜单取消未完成接口请求的案例
2020/11/13 Javascript
pygame学习笔记(5):游戏精灵
2015/04/15 Python
Python简单定义与使用字典dict的方法示例
2017/07/25 Python
python实现飞机大战游戏
2020/10/26 Python
创建Shapefile文件并写入数据的例子
2019/11/26 Python
numpy 声明空数组详解
2019/12/05 Python
python垃圾回收机制(GC)原理解析
2019/12/30 Python
Pygame的程序开始示例代码
2020/05/07 Python
python字符串的index和find的区别详解
2020/06/20 Python
CSS3实现王者荣耀匹配人员加载页面的方法
2019/04/16 HTML / CSS
Lee牛仔裤澳大利亚官网:美国著名牛仔裤品牌
2017/09/02 全球购物
HelloFresh澳大利亚:订购你的美味食品盒、健康餐食
2018/03/28 全球购物
Raffaello Network德国:意大利拉斐尔时尚购物网
2019/05/01 全球购物
物业管理大学生个人的自我评价
2013/10/10 职场文书
我未来的职业规划范文
2014/01/11 职场文书
乡镇干部个人对照检查材料思想汇报
2014/10/04 职场文书
节水倡议书
2015/01/19 职场文书
2016年会开场白台词
2015/06/01 职场文书
Jupyter notebook 更改文件打开的默认路径操作
2021/05/21 Python
MySQL 常见的数据表设计误区汇总
2021/06/07 MySQL
springboot实现string转json json里面带数组
2022/06/16 Java/Android