php中查询数据库含通配符时需要转义的问题
来源:互联网 发布:mac office2016密钥 编辑:程序博客网 时间:2024/06/03 19:13
问题描述:博主在测试数据库模糊查询功能时发现,查询内容包括 下划线’_’,百分号’%’,反斜杠’\’等特殊符号时会出现错误的查询结果,下划线,百分号会被当作通配符,反斜杠会被当作转义符。
博主想到可以在后台对接收的数据进行转义。但是查百度找到的函数都不能用
,所以想要自己写个函数进行转义,其实就是在百分号’%’,下划线’_’等字符的前面加上转义字符’\’。
下面是博主自己写的函数:
//转义函数 function transfer($string){ $string = str_replace('%','\%',$string); $string = str_replace('_','\_',$string); $string = str_replace('[','\[',$string); $string = str_replace(']','\]',$string); $string = str_replace('\\','\\\\\\a',$string); $string = str_replace('\a','\\',$string); return $string; }
用转义后的字符替换需要转义的字符就可以了。
博主又发现反斜杠转义时有些麻烦,经过测试发现正确的查询反斜杠’\’的方法是查询’\\’ ,而直接转义时无法转义’\’为’\\’,所以就想到了上面的方法。
阅读全文
0 0
- php中查询数据库含通配符时需要转义的问题
- Hive中LIKE查询使用通配符'%'的一个BUG--当转义符'\'遇到通配符'%'或'_'
- Hive中LIKE查询使用通配符'%'的一个BUG--当转义符'\'遇到通配符'%'或'_'
- JDBC API getTables()、getColumns() 中,通配符进行转义的问题
- solr 查询语句中需要转义的字符
- sql中对通配符的转义
- 关于一个编辑器插入数据库需要转义的问题
- 含通配符的字符串匹配问题
- mysql 查询时候用到的通配符和转义字符
- 数据库查询之通配符的使用[数据库]
- sqllite数据库查询方法中需要注意的 模糊查询问题
- 对 带有下划线 “_” 的参数放到Mysql 中like查询时需要先对其转义
- 数据库中通配符的应用
- 数据库查询之通配符的使用
- SQL中通配符、转义符与"["号的使用(downmoon)
- SQL中通配符、转义符与"["号的使用
- SQL中通配符、转义符与括号的使用
- SQL中通配符、转义符与"["号的使用(downmoon)
- H
- PDO 增删改查
- kafka无法正常生产消费,但依旧可以创建生产者和消费者
- Quartz Cron表达式 每周、每月执行一次
- 代码中特殊的注释技术——TODO、FIXME和XXX的用处
- php中查询数据库含通配符时需要转义的问题
- C++实践积累
- LightOJ
- Linux下修改Mysql数据库存放路径
- Windows下Android app压力测试学习笔记
- 2017暑期集训Day 9 递推
- Unity3D 海水多线程渲染算法实现
- 文章不错记录一下
- Jquery加强