thinkphp6 paginate() 分页数据处理后输出

来源:https://blog.csdn.net/baidu_29994443/article/details/101070031

替换处理

<?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;
}
?>

 

thinkphp6 paginate() 分页数据处理后输出

上一篇:.NET Standard多目标框架类库引用继承和函数调用规则


下一篇:【HTML】关于HTML的一些知识点(2)