如下示例:
$_where 和 $where组合查询
$_where之间用OR
$where之间用AND
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
$condition
= I(
'post.condition'
);
switch
(
$condition
){
case
1:
$where
[
't.digest'
] =
array
(
'gt'
,0);
break
;
case
2:
$where
[
't.displayorder'
] = 4;
break
;
case
3:
$where
[
't.type'
] = 1;
break
;
default
:
$_where
[
't.type'
] = 1;
$_where
[
't.displayorder'
]= 4;
$_where
[
't.digest'
] =
array
(
'gt'
,0);
$_where
[
'_logic'
] =
'or'
;
$where
[
'_complex'
] =
$_where
;
}
// 板块筛选
if
(
$_POST
[
'fid'
]){
$where
[
't.fid'
] = I(
'post.fid'
);
}
// 时间筛选
if
(
$_POST
[
'start_time'
]
and
$_POST
[
'end_time'
]){
$where
[
't.add_time'
] =
array
(
array
(
'egt'
,
strtotime
(I(
'post.start_time'
))),
array
(
'elt'
,
strtotime
(I(
'post.end_time'
)))
);
}
else
{
if
(
$_POST
[
'start_time'
]){
$where
[
't.add_time'
] =
array
(
'egt'
,
strtotime
(I(
'post.start_time'
)));
}
else
if
(
$_POST
[
'end_time'
]){
$where
[
't.add_time'
] =
array
(
'elt'
,
strtotime
(I(
'post.end_time'
)));
}
}
|