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.'%'];