PHP

thinkPHP使用like查询出现的问题

字号+ 编辑: 国内TP粉 修订: 种花家 来源: ThinkPHP 2023-09-10 我要说两句(0)

Thinkphp5使用orm遇到的一个坑。

thinkphp5使用orm当中like查询, 如果为多个查询|分隔,会有一些小问题。

问题详述

故障代码

$key = '123456';
$data['member_mobile|member_id|out_trade_no'] = ['like','%'.$key.'%'];
$this->moneyrechargelog_model->where($data)->select();

本人使用like查询, 分别为手机号,id,订单号.

其中手机号varchar,id是int,订单号为char.

打印出语句

其中member_id查询的为0

SELECT * FROM `qlqw_money_recharge_log` WHERE  ( `member_mobile` LIKE '%123456%' OR `member_id` LIKE 0 OR `out_trade_no` LIKE '%123456%' )

解决方法

int类型加esc下面的单引符号.

$data['member_mobile|`member_id`|out_trade_no'] = ['like','%'.$key.'%'];
阅完此文,您的感想如何?
  • 有用

    1

  • 没用

    2

  • 开心

    1

  • 愤怒

    1

  • 可怜

    1

1.如文章侵犯了您的版权,请发邮件通知本站,该文章将在24小时内删除;
2.本站标注原创的文章,转发时烦请注明来源;
3.交流群: PHP+JS聊天群

相关课文
  • mac开发接入微信公众号接口返回报错 cURL error 56: SSLRead() return error -9806

  • pecl安装程序时报错Array and string offset access syntax with curly braces is no longer supported

  • PHP的换行符是什么

  • 由于商家传入的H5交易参数有误,该笔交易暂时无法完成,请联系商家解决

我要说说
网上宾友点评