thinkphp条件查询和模糊查询的一些方法
1 #文章管理 2 public function adminArticle(){ 3 $adminArticle=M("article"); 4 $arr_seach=$this->seach($adminArticle,10,"篇文章","now desc","");//参数格式seach($db,$num,$page_header,$order,$where) 5 ##按最早排序 6 if(!@empty($_POST['time'])){ 7 $arr_seach=$this->seach($adminArticle,10,"篇文章","now asc",""); 8 } 9 ##按作者查询 10 if(!@empty($_POST['author'])){ 11 $arr_seach=$this->seach($adminArticle,10,"篇文章","now desc","author='{$_POST['author']}'"); 12 } 13 ##按标签查询 14 if(!@empty($_POST['classify'])){ 15 $arr_seach=$this->seach($adminArticle,10,"篇文章","now desc","classify='{$_POST['classify']}'"); 16 } 17 ##模糊查询 18 if(!@empty($_POST['seach'])){ 19 $map['title'] =array('like',"%{$_POST['seach']}%",'or'); 20 $arr_seach=$this->seach($adminArticle,10,"篇文章","now desc",$map); 21 } 22 ##输出到view 23 $selectArticle=$arr_seach['selectArticle']; 24 $show=$arr_seach['show']; 25 $arr_index=array( 26 "selectArticle"=>$selectArticle, 27 "page"=>$show 28 ); 29 $this->assign($arr_index); 30 $this->display(); 31 } 32 ##一个查询方法 33 public function seach($db,$num,$page_header,$order,$where){ 34 $count = $db->where($where)->count();// 35 $Page = new \Think\Page($count,$num);// 实例化分页类 传入总记录数和每页显示的记录数(25) 36 if($page_header==false){ 37 $Page->setConfig("header",""); 38 }else{ 39 $Page->setConfig("header","<span class='rows'>共 %TOTAL_ROW% ".$page_header."</span>"); 40 } 41 $show = $Page->show();// 分页显示输出 42 43 $selectArticle=$db->order($order)->where($where)->limit($Page->firstRow.','.$Page->listRows)->select(); 44 45 return $arr_page = array( 46 "show"=>$show, 47 "Page"=>$Page, 48 "selectArticle"=>$selectArticle, 49 ); 50 }