php - TP5 where方法問題
大家讲道理
大家讲道理 2017-05-16 12:02:19
0
1
622

我發現了TP5一個很奇葩的問題,在TP3.2的時候,在一個where裡可以用多維數組,設定多項查詢條件(子條件)
如:

where([array('id'=>'1','username'=>'2'),array('username'=>'3','password'=>'4'),'_logic'=>'or'])->find();

這段程式碼產生的sql是
WHERE ( id = '1' AND username = '2' ) OR ( username = '3' AND password = '4' ) LM

上面一個括號就是一個子條件,很清楚明了,但到了TP5,不再支援'_logic'字段,而是採用where和whereOr方法,好像已經不能以子條件的形式生成的SQL了,那要怎麼才能寫出複雜的where語句呢。請大神指教指教。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回覆(1)
大家讲道理

數組是支援的:

$map['name'] = 'thinkphp';
$map['status'] = 1;
Db::table('think_user')->where($map)->select(); 

可以直接使用字串查詢

where("id = '1' AND username = '2'")->find(); 

建議你直接查文件:
查詢方法

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板