mysql和thinkphp5.1同时返回总数以及分页数据

第一种使用mysql 自带的函数

//在SQL中加入SQL_CALC_FOUND_ROWS * 
SELECT SQL_CALC_FOUND_ROWS * FROM user limit 0 20;

// 再获取总数
SELECT FOUND_ROWS() AS total;

示例:
$rows = Db::query('SELECT SQL_CALC_FOUND_ROWS * FROM user limit 0 20');
$total = Db::query('SELECT FOUND_ROWS() AS total');

第二种ThinkPHP 5.1 中使用paginate()

  $rows = Db::table('user')->paginate();
  
  //获取总数
  $rows->total();

 // 获取分页数据
  $rows->items();

 // 获取当前页码
  $rows->currentPage();
 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容