多条件查询时MYSQL语句的PHP写法
当有多个条件时sql查询语句怎么写呢?因为有时候并没有这个条件,是不是觉得一个一个if判断很麻烦呢? 一般写法
<?php
$sql='';
if($a==''){
$sql.="...";
}
if($b==''){
$sql.="...";
}
...
?>
这样做碰到的一个麻烦是,我们不知道到底条件满不满足,第一个AND出现在那里,其实我们可以这样写
<?php
$sql='';
if($a==''){
$query[]="...";
}
if($b==''){
$query[]="...";
}
...
if(count($query)>0){
$sql.=" WHERE ".implode(" AND ",$query);
}
?>