初始写法
v
i
p
l
i
s
t
=
D
b
:
:
n
a
m
e
(
′
b
r
a
n
d
1
3
′
)
−
>
w
h
e
r
e
(
′
u
i
d
′
,
viplist = Db::name('brand_13')->where('uid',
viplist=Db::name(′brand13′)−>where(′uid′,formData[‘u_id’])->where(‘vip_valid_time’,’>’,$time)->where(‘status’,3)->whereor([[vip_valid_time
> 1603422315],[vip_valid_time
= 0 ]])->field(‘itemid,sid,title,uid’)->order(‘edittime desc’)->select();
生成的sql居然是
SELECT itemid
,sid
,title
,uid
FROM vt_brand_13
WHERE uid
= 1691 AND status
= 3 or vip_valid_time
> 1603422315 OR vip_valid_time
= 0
但是想生成下面的效果 就要使用闭包函数了
SELECT itemid
,sid
,title
,uid
FROM vt_brand_13
WHERE ( vip_valid_time
> 1603422315 OR vip_valid_time
= 0 ) AND uid
= 1691 AND status
= 3
v
i
p
l
i
s
t
=
B
r
a
n
d
13
:
:
w
h
e
r
e
(
f
u
n
c
t
i
o
n
(
viplist = Brand13::where(function(
viplist=Brand13::where(function(query){
KaTeX parse error: Expected 'EOF', got '}' at position 87: …); }̲)->where('uid',uid)->where([‘status’=>3])->field(‘itemid,sid,title,uid’)->select();