thinkphp paginate() 分頁數據處理後輸出

替換處理

<?php
//model裏面的分頁函數
public function pageQuery(){    
    $rs = $this->where($where)->field(true)->order('id desc')->paginate()
    ->each(function($item, $key){
        if($item['status']==1){
            $item['name1'] = $item['name2'];
        }
        $item['imgSize'] = round($item['imgSize']/1024/1024,2);
        return $item;
    });
    return $rs;
}
?>

 

如果each裏面涉及到別的表,則代碼如下:

<?php
//model裏面的分頁函數
public function pageQuery(){    
    $rs = $this->where($where)->field(true)->order('id desc')->paginate()   
    ->each(function($item, $key){
        $urs = Db::name('u')->where('isShow',1)->select();
        foreach ($urs as $rkey=>$rv){
            if($item['userScore']>=$rv['startScore'] && $item['userScore']<$rv['endScore']){
               $item['userRank'] = $rv['rankName'];
            }
        }
        return $item;
    });
    return $rs;
}
?>

如果each裏面涉及到外部參數,則代碼如下:

 

<?php
//model裏面的分頁函數
public function pageQuery(){
//從別的表獲得參數值,一次獲取,each中可以重複使用
$urs = Db::name('u')->where('isShow',1)->select(); 
$rs = $this->where($where)->field(true)->order('id desc')->paginate() 
->each(function($item, $key) use ($urs){ 
//使用外部傳來的參數$urs
foreach ($urs as $rkey=>$rv){
if($item['userScore']>=$rv['startScore'] && $item['userScore']<$rv['endScore']){
  $item['userRank'] = $rv['rankName'];
}
}
return $item;
});
return $rs;
}
?>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章