您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關使用thinkphp5框架怎么在前后端分離項目中實現分頁功能,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
方法一
利用tp5提供的paginate方法實現自動分頁
參數
page第幾頁,paginate分頁方法會自動獲取
size 每頁數量
代碼
public function getMyConsumeLog(Request $request) { global $_W; $size = $request->param('size', 6); $list = $this->model->getListByMid($_W['user']['id'],$size); return json(['data' => $list, 'error' => 0, 'message' => 'success']); } public function getListByMid($mid,$size = 10){ $res = $this ->alias('c') ->field('c.*,b.book_name,b.book_flash,s.section_title') ->leftJoin('booksection s','c.chapter_id = s.id') ->leftJoin('book b','s.book_id = b.id') ->where('c.mid',$mid) ->order('c.id desc') ->paginate($size); return $res; }
返回數據
{
"data": {
"total": 1,
"per_page": 1,
"current_page": 1,
"last_page": 1,
"data": [
{
"id": 105,
"mid": 55,
"book_id": 31,
"chapter_id": 46046,
"score": 27,
"create_time": 1561447448,
"book_name": "桃運村支書",
"book_flash": "https://cdnxiaoshuo.t.com/FiO6TM0N4kpzKB7tqrDko64ZS4H4",
"section_title": "第29章 康莊大道"
}
]
},
"error": 0,
"message": "success"
}
方法二
利用limit方法
$curr_page = $request->param('page', 1); $size = $request->param('size', 6); $list = $consume_model->getListByWhere($curr_page, $size, $where); $num = $consume_model->getListByWhereCount($where); return json(['data' => $list,'num' => $num,'error' => 0, 'message' => 'success']); public function getListByWhere($curr_page,$limit = 10,$where = null){ $res = $this ->alias('c') ->field('c.*,b.book_name,s.section_title') ->leftJoin('booksection s','c.chapter_id = s.id') ->leftJoin('book b','s.book_id = b.id') ->where($where) ->order('c.id desc') ->limit($limit*($curr_page - 1),$limit) ->select() ->toArray(); return $res; } public function getListByWhereCount($where = null){ $count = $this ->alias('c') ->where($where) ->count(); return $count; }
返回值
{
"data": [
{
"id": 2,
"mid": 4,
"book_id": 4,
"chapter_id": 22,
"score": 30,
"create_time": 0,
"book_name": "復仇者聯盟I",
"section_title": "第11章 你是睡"
},
{
"id": 1,
"mid": 4,
"book_id": 29,
"chapter_id": 34,
"score": 20,
"create_time": 1598999,
"book_name": "復仇者聯盟II",
"section_title": "第11章 你是睡"
}
],
"num": 2,
"total_coin": 50,
"error": 0,
"message": "success"
}
以上就是使用thinkphp5框架怎么在前后端分離項目中實現分頁功能,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。