laravel数组分页
控制器
public function getLifelist(Request $request) { $life_cid = session('lifeid'); $type=$request->input('type')?$request->input('type'):'deal_time'; $desc=$request->input('desc')?$request->input('desc'):'desc'; $status = $request->input('status')?$request->input('status'):0; if ($request->has('keywords')) { $keywords = $request->input('keywords'); $key = $request->input('key'); } else { $keywords = ''; $key ='deal_ordernum'; } $count=[0=>0,1=>0,2=>0,3=>0]; $life = DB::table('life')->where('life_cid',$life_cid)->select('life_id','life_title')->get(); foreach ($life as $k => $v) { if ($status == 0) { $life_deal = DB::table('life_deal')->where('deal_fid',$v->life_id)->get(); } else if ($status==1) { $life_deal = DB::table('life_deal') ->where('deal_fid',$v->life_id) ->where('deal_evaluate',0) ->where('deal_status',3) ->where($key,'like','%'.$keywords.'%') ->orderby($type,$desc) ->get(); } else { $life_deal = DB::table('life_deal') ->where('deal_fid',$v->life_id) ->where('deal_status',2) ->where($key,'like','%'.$keywords.'%') ->orderby($type,$desc) ->get(); } foreach ($life_deal as $kk => $value) { $value->life_title = $v->life_title; $value->deal_time = date('Y-m-d H:i:s',$value->deal_time); $arr[] = $value; } $count[0]+=DB::table('life_deal')->where('deal_fid',$v->life_id)->where('deal_status','!=',1)->count(); $count[1]+=DB::table('life_deal')->where('deal_fid',$v->life_id)->where('deal_status',3)->count(); $count[2]+=DB::table('life_deal')->where('deal_fid',$v->life_id)->where('deal_status',2)->count(); $count[3]+=DB::table('life_deal')->where('deal_fid',$v->life_id)->where('deal_status',3)->count(); } $perPage = 5; if ($request->has('page')) { $current_page = $request->input('page'); $current_page = $current_page <= 0 ? 1 :$current_page; } else { $current_page = 1; } $item = array_slice($arr, ($current_page-1)*$perPage, $perPage); //注释1 $total = count($arr); $paginator =new LengthAwarePaginator($item, $total, $perPage, $current_page, [ 'path' => Paginator::resolveCurrentPath(), //注释2 'pageName' => 'page', ]); $data=$request->except('data'); $res = $paginator->toArray()['data']; return view('lifeadmin.serve.LifeOrder',compact('data','paginator','res','status','type','desc','count')); }
分页方法
{!! $paginator->appends($data)->render() !!}

浙公网安备 33010602011771号