php - 哪位帮改下正则的问题?
伊谢尔伦
伊谢尔伦 2017-04-10 14:30:34
[PHP讨论组]

想模拟一下Pdo的bindParam功能

写了一段简答的代码,如下: 查看链接吧,我搞不定大段的代码:代码图片展示 以上代码基本上可以实现简单的绑定功能,会输出拉下结果:

SELECT * FROM TABLE WHERE conId=1 AND title LIKE '测试' AND created<='12312321312' ORDER BY conId DESC LIMIT 1

但是情况特殊的话就不行了,比如:

$sql = "SELECT * FROM TABLE WHERE conId=:id AND test=:idte AND title LIKE :kw AND created<=:time ORDER BY conId DESC  LIMIT 1";

$args = array('id'=>1,'idte'=>'tester','kw'=>'测试','time'=>12312321312); 把$sql和$args都修改一下,输出的结果就会混乱,看" test=1te"这里

SELECT * FROM TABLE WHERE conId=1 AND test=1te AND title LIKE '测试' AND created<='12312321312' ORDER BY conId DESC LIMIT 1
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(1)
阿神

把 add_quote 改成这样试试?

function add_quote($v){
  $v = preg_quote(':', $v);
  return $v.'\b/';
}

这里有一个正则表达式教程,介绍了相关的问题:
http://deerchao.net/tutorials/regex/regex.htm#getstarted

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号