首页 > 原创文章 > 软件开发 > 查看文章

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

所属分类:软件开发 来源: 丁老师原创 发布时间:2024-02-22 11:22 浏览: 2459 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);

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

相关文章

在Nuxt 3中,配置加载sass文件路径的...

在使用前端框架Nuxt3开发时,如何配置自定义的scss文件路径呢?有同学使用loadPaths: ['@/assets/css']来设置路径,但是无效,是因为在loadPaths中,@符号不起作用,不能代表根目录。正确...

Bagisto使用常见问题与解决方法

Bagisto是一款强大的跨境电商平台软件,很多客户在初次安装和使用时,会或多或少遇到一些解决不了的情况。丁老师整理了一些常见的Bagisto问题以及解决方法以供查阅。问:安装Bagisto时出现"Commandcompose...

在vs code中调试Deno

在vscode中,可以通过配置.vscode/launch.json来debugdeno项目,具体方法如下:1.创建.vscode/launch.json;2.找到<entry_point ,替换为你的script脚本;3.点击F...

宝塔面板phpmyadmin数据库表导航树禁...

宝塔面板的phpmyadmin,默认数据库表导航树是每30个一页,非常的不直观,可以通过修改宝塔phpmyadmin配置文件的方式来禁止他分页。修改方法:1.进入服务器/www/server/phpmyadmin/phpmyadmin_...

推荐文章

小程序开发的流程费用以及需要什么准备材料?

小程序定制开发的流程和费用,以及需要准备的材料,(包括但不限于微信小程序、百度小程序、支付宝小程序、抖音小程序、小红书小程序)具体如下:一、小程序开发的行政流程1.确定软件开发公司,和开发公司签订合同2.甲方支付首期开发费用3.乙方开始进行...

mysql导入文件,source命令/php...

用phpmyadmin导入大数据库文件时,容易502badgateway,可以直接在linux上用mysql原生命令导入。1.上传sql文件到目录用Xshell登录服务器,将迁移过来的sql文件移到home目录下,方便下一步的操作,站长之前...

CI框架页面添加全局变量的方法

CI框架是一款很小却又非常强大的PHP程序框架,非常适合用来搭建中小型网站以及扩展程序。有同学问到,在使用CI框架时,比如要对全站的标题、公司信息、电话等设置一个全局变量,不用每个页面都写死,该怎么办呢?丁老师来教你:1.打开页面的控制器文...

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

在使用idea旗下的产品,如intellijidea,phpstorm,webstorm时,有的时候编辑前端页面JS,在换行时经常会自动出现个}大括号,这一点程序不是很智能,其实后边都已经有括号了。比如下图这样:那么如何解决这个问题呢?丁老...