andriajah Fri Jun 2020 2 years ago

Contoh Laravel Manual Pagination dengan Array

Jika Anda perlu membuat pagination khusus dari array, Anda bisa belajar dari posting ini. pada dasarnya kita melakukan pagination dengan model atau fasad DB seperti "User :: paginate (10)" OR "DB :: table ('users')->paginate(10)". Tetapi sekarang jika Anda memiliki array baru dan Anda ingin membuat pagination pada array Anda maka Anda juga dapat memberikan menggunakan class "LengthAwarePaginator" lihat contoh berikut:

Contoh:

public function myData($userid)
{
    $data = static::get();
    

    $result = [];
    if(!empty($data)){
        foreach ($data as $key => $value) {
            $result[$value->type.'-'.$value->postid][] = $value;
        }
    }
    

    $paginate = 10;
    $page = Input::get('page', 1);
    

    $offSet = ($page * $paginate) - $paginate;  
    $itemsForCurrentPage = array_slice($result, $offSet, $paginate, true);  
    $result = new \Illuminate\Pagination\LengthAwarePaginator($itemsForCurrentPage, count($result), $paginate, $page);
    $result = $result->toArray();
    return $result;
}

 

manual pagenation array laravel