最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

laravel自定義分頁效果

 更新時(shí)間:2017年07月23日 11:49:07   作者:李碩  
這篇文章主要為大家詳細(xì)介紹了laravel自定義分頁實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

對(duì)于laravel分頁,自帶一個(gè)paginate的方法,很好用,但是也是有局限性的。

所以自己針對(duì)于此寫了一個(gè)自己的分頁,具體代碼如下

<?php  
namespace ...;

use ...;
/**
 * 自定義分頁類,適合少數(shù)據(jù)的查詢,多數(shù)據(jù)的時(shí)候不推薦
 * Class CustomPaginate
 * @package App\Tools\Paginate
 */
class CustomPaginate
{
  /**
   * 自定義數(shù)組分頁
   * @param $data = 返回結(jié)果
   * @param $page
   * @param $limit
   * @return mixed
   */
  public static function paginate($data, $page = 1, $limit = 10)
  {
    if (!is_numeric($page) || !is_numeric($limit)) {
      return false;
    }
    $count = count($data);
    $data = array_slice($data, ($page - 1) * $limit, $limit);
    return new LengthAwarePaginator($data, $count, $limit, $page);
  }

  /**
   * 參數(shù)解釋 對(duì)外暴露的方法
   * @param $data = array|collection 切記只支持這兩種
   * @param $page = 當(dāng)前頁
   * @param $limit = 每一頁展示幾條
   * @return array|false
   * 返回結(jié)果為數(shù)組
   * 調(diào)用實(shí)例: CustomPaginate::paginateToArray($data, $request->page, $request->limit);
   */
  public static function paginateToArray($data, $page = 1, $limit = 10)
  {
    $isValidate = self::validate($data, $page, $limit);           //驗(yàn)證
    if ($isValidate === false) {
      return false;
    }

    $res = self::paginate($data, $page, $limit)->toArray();         //分頁數(shù)據(jù)轉(zhuǎn)換為數(shù)組

    //上一頁 || 下一頁 => path
      if ($res['prev_page_url'] != null) {
        $prev_page = $page - 1;
        $res['prev_page_url'] = Paginator::resolveCurrentPath() . "?page=" . $prev_page . "&limit=" . $limit;
      }
      if ($res['next_page_url'] != null) {
        $next_page = $page + 1;
        $res['next_page_url'] = Paginator::resolveCurrentPath() . "?page=" . $next_page . "&limit=" . $limit;
      }
    return $res;
  }

  /**
   * 驗(yàn)證參數(shù)是否合法
   */
  public static function validate(&$data, &$page = 1, &$limit = 10)
  {
    $page = empty($page) ? 1 : $page;
    $limit = empty($limit) ? 10 : $limit;
    if (!is_array($data) && !$data instanceof Collection) {
      return false;//"自定義分頁方法只支持?jǐn)?shù)組數(shù)據(jù)和集合數(shù)據(jù)";
    }
    if (!is_numeric($page) || !is_numeric($limit)) {
      return false;//"page limit 參數(shù)只支持?jǐn)?shù)字";
    }
    if ($data instanceof Collection) {
      return $data = $data->toArray();
    }
    return $data;
  }

}

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • php數(shù)組應(yīng)用之比較兩個(gè)時(shí)間的相減排序

    php數(shù)組應(yīng)用之比較兩個(gè)時(shí)間的相減排序

    因網(wǎng)站需要實(shí)現(xiàn)兩個(gè)時(shí)間段的所有小說的收藏,點(diǎn)擊等操作,特把同事寫的代碼收藏下,以后有需要研究
    2008-08-08
  • laravel通過創(chuàng)建自定義artisan make命令來新建類文件詳解

    laravel通過創(chuàng)建自定義artisan make命令來新建類文件詳解

    Laravel通過Artisan提供了強(qiáng)大的控制臺(tái)命令來處理非瀏覽器業(yè)務(wù)邏輯。下面這篇文章主要給大家介紹了關(guān)于laravel如何通過創(chuàng)建自定義artisan make命令來新建類文件的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-08-08
  • PHP-FPM和Nginx的通信機(jī)制詳解

    PHP-FPM和Nginx的通信機(jī)制詳解

    這篇文章主要給大家介紹了關(guān)于PHP-FPM和Nginx通信機(jī)制的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • PHP代碼判斷設(shè)備是手機(jī)還是平板電腦(兩種方法)

    PHP代碼判斷設(shè)備是手機(jī)還是平板電腦(兩種方法)

    隨著互聯(lián)網(wǎng)移動(dòng)設(shè)備的普及,很多網(wǎng)站都兼容手機(jī)端瀏覽,為了更好的讓網(wǎng)頁在手機(jī)端顯示,我們都選擇了使用CSS媒體查詢制作響應(yīng)式模版。本文給大家介紹PHP代碼判斷設(shè)備是手機(jī)還是平板電腦(兩種方法),感興趣的朋友一起學(xué)習(xí)吧
    2015-10-10
  • php實(shí)現(xiàn)批量上傳數(shù)據(jù)到數(shù)據(jù)庫(.csv格式)的案例

    php實(shí)現(xiàn)批量上傳數(shù)據(jù)到數(shù)據(jù)庫(.csv格式)的案例

    下面小編就為大家?guī)硪黄猵hp實(shí)現(xiàn)批量上傳數(shù)據(jù)到數(shù)據(jù)庫(.csv格式)的案例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • Kindeditor編輯器添加圖片上傳水印功能(php代碼)

    Kindeditor編輯器添加圖片上傳水印功能(php代碼)

    這篇文章主要為大家詳細(xì)介紹了Kindeditor編輯器加圖片上傳水印功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • PHP學(xué)習(xí)筆記之php文件操作

    PHP學(xué)習(xí)筆記之php文件操作

    這篇文章主要介紹了PHP學(xué)習(xí)筆記之php文件操作 的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-06-06
  • PHP session文件獨(dú)占鎖引起阻塞問題解決方法

    PHP session文件獨(dú)占鎖引起阻塞問題解決方法

    這篇文章主要介紹了PHP session文件獨(dú)占鎖引起阻塞,本文講解PHP使用默認(rèn)文件會(huì)話處理器時(shí)容易導(dǎo)致的阻塞問題解決方法,需要的朋友可以參考下
    2015-05-05
  • PHP AOP教程案例

    PHP AOP教程案例

    這篇文章主要介紹了PHP AOP教程案例,本篇文章通過簡要的案例,講解了AOP該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • PHP 獲取MSN好友列表的代碼(2009-05-14測試通過)

    PHP 獲取MSN好友列表的代碼(2009-05-14測試通過)

    感謝druggo提供代碼 放到首頁只是覺得值得大家研究 等有機(jī)會(huì)把這代碼裝成jsp的
    2009-09-09

最新評(píng)論

阿拉善右旗| 灌南县| 和硕县| 湘乡市| 虎林市| 德州市| 自贡市| 蓬莱市| 济阳县| 中牟县| 旅游| 达日县| 哈密市| 广西| 太仆寺旗| 怀柔区| 师宗县| 金乡县| 容城县| 德钦县| 林口县| 宁强县| 台前县| 隆尧县| 巴南区| 金门县| 卫辉市| 福贡县| 拜泉县| 泸水县| 高密市| 保康县| 灵武市| 太保市| 和顺县| 稷山县| 山丹县| 武威市| 定边县| 贵州省| 平远县|