首页 > 文章列表 > 相关知识 > 查看文章

php拼装sql语句,换行查询出错的问题解决

所属分类:相关知识 来源: 丁老师原创 更新时间:2024-02-22 11:22 IP属地: 深圳

在php代码中,遇到复杂的sql语句,需要拼装sql语句,如:

$sql='id>10;'
$sql=' and 
(
    status in(1,2,3,4,5) and
    id not in (select id from aaa where datetime<=1708561241)
)
';

在使用这种拼装语句时,刚开始是发现没有问题的,后来当数据量大了后,丁老师发现使用这种语句查询和直接在数据库查询出的结果数不一致,原来是在拼装sql语句有换行符,php在执行查询时,遇到换行符就出错了,导致查询数据结果不一致。解决办法:

在拼装语句的最后,加上一句:

$sql=str_replace(PHP_EOL,' '.$sql);

替换所有换行符为空格就好

dls6.jpg

相关文章

Moment.js设置英文为中文的方法

Moment.js是一个不错的时间处理类js封装包,从官网下载默认是英文的,比如moment...

idea storm换行自动显示的}括号如何...

在使用idea旗下的产品,如intellijidea,phpstorm,webstorm时,...

常用方形矩形符号大全

⊞▀▁▂▃▄▅▆▇█▉ ▊ ▋ ▋ ▌▍▎▏▐░ ▒ ▓ ▔ ■ □ ▢ ▣ ▤ ▥ ▦ ▧...

linux下mysql数据库自动备份

不说废话,直接上解决办法。写mysqldump-uusername-ppasswordDat...

推荐文章

excel自动计算每一行成绩之和的方法

excel有一个表格,需要自动计算每一行的乘积,最后计算总和,图示如下可以使用SUMPROD...

ojs期刊投稿系统上传文件提示“Slim A...

ojs期刊投稿系统,在MakeaSubmission,UploadFiles时文件上传失败,...

宝塔"在未指定SSL默认站点时,未开启SSL...

宝塔系统相关问题解决方法

CodeIgniter框架URL如果去掉in...

在使用PHP框架CI时,有个很恶心的地方就是他的URL需要带上index.php,比如我要建...

QQ咨询 微信咨询 电话咨询