篩選其實(shí)很簡(jiǎn)單,就是確定好 篩選條件 和 url傳參,
用程序的語(yǔ)言來(lái)說(shuō),就是確定好 $where 和 $cid,就可以 了
例子①:
根據(jù)如上方式篩選:1.商鋪名稱 模糊查詢;2審核有四種條件:0 請(qǐng)選擇,1待審核,2審核通過(guò),3審核未通過(guò);3商鋪狀態(tài)為1(開啟)。
滿足條件分析:商鋪狀態(tài)必須為1.商鋪名稱為空,審核是“請(qǐng)選擇”時(shí),將顯示全部。
具體控制器方法如下:
public function index(){
$Store = M('store');
$condition = '';
$store_name =I('post.store_name');//接收商鋪名稱
$audit =intval(I('post.audit'));//接收審核狀態(tài)
/*篩選條件判斷*/
if($store_name){
$map['store_name'] =array('like',"%".$store_name."%");//like 條件判斷
}
if($audit){
$map['is_audit'] =$audit;//審核狀態(tài)
}
$map['store_state'] = 1;//必選條件
$storelist =$Store->where($map)->select();//根據(jù)條件篩選
$this->assign('storelist',$storelist);// 賦值數(shù)據(jù)集
}
分析:使用$map的好處是當(dāng)其中一個(gè)條件為空時(shí),直接查詢其他條件。相當(dāng)于 SQL語(yǔ)句中 字段 is null。如用if語(yǔ)句判斷,代碼會(huì)非常繁瑣。