yii分页 CDbCriteria

1,AR方式
model文件中
public function getList(){
    $criteria = new CDbCriteria();          
      $count = $this->count($criteria);
    $pager = new CPagination($count);
    $pager->pageSize = 10;
    $pager->pageVar = 'p';//修改分页参数,默认为page
    $pager->params = array('type'=>'msg');//分页中添加其他参数
    $pager->applyLimit($criteria);
    $list = $this->findAll($criteria);
    return array('pages'=>$pager,'list'=>$list);
}
public function getPageList($condition = '',$page = 1,$limit = 10){
    $critieria = new CDbCriteria();
    $critieria->condition = $condition;
    $count = $this->count($critieria);
    $pageCount = ceil($count/$limit);
    $critieria->order = 'FID DESC';
    $critieria->limit = $limit;
    $critieria->offset = ($page-1)*$limit;
    $data = $this->findAll($critieria);
    //$data[] = $count;
    //$data[] = $pageCount;
    return $data;
}
2,DAO方式 queryAll()
$criteria = new CDbCriteria;    
$sql = "SELECT * FROM USER";      
$model= Yii::app()->db->createCommand($sql)->queryAll();      
$pages = new CPagination(count($model));                    
$pages->pageSize = 5;      
$pages->applylimit($criteria);      
$model=Yii::app()->db->createCommand($sql." LIMIT :offset,:limit");      
$model->bindValue(':offset', $pages->currentPage*$pages->pageSize);      
$model->bindValue(':limit', $pages->pageSize);      
$model=$model->queryAll();
2,DAO方式 query()
$criteria=new CDbCriteria();              
$result = Yii::app()->db->createCommand($sql)->query();            
$pages=new CPagination($result->rowCount);          
$pages->pageSize=5;            
$pages->applyLimit($criteria);          
$result=Yii::app()->db->createCommand($sql." LIMIT 5");            
$result->bindValue(':offset', $pages->currentPage*$pages->pageSize);          
$result->bindValue(':limit', $pages->pageSize);          
$list=$result->query();
3,view中调用
$this->widget('CLinkPager',array(    
'header'=>'',
'cssFile'=>false,//去除默认的样式
'firstPageLabel' => '首页',  
  'lastPageLabel' => '末页',    
'prevPageLabel' => '上一页',    
'nextPageLabel' => '下一页',    
'pages' => $pages,    
'maxButtonCount'=>13    
)  
); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值