点击 "运行实例" 按钮查看在线实例
// 获取当前要显示的页数$page = intval($_GET['p'] ?? 1);$pdo = new PDO('mysql:dbname=php', 'root', 'root');// 每页显示数量$num = 5;// 总页数: 需要分二步, 第一求出总记录数量, 第二总记录数量除以每页显示的记录数量,再向上取整$sql = "SELECT CEIL(COUNT(`mov_id`)/{$num}) FROM `movies`";$stmt = $pdo->prepare($sql);$stmt->execute();$pages = $stmt->fetchColumn(0);// 每页的显示起止位置: 偏移量// 偏移量 = 当前显示数量 * (当前页码 - 1)$offset = $num * ($page - 1);$sql = "SELECT `mov_id`,`name`, CONCAT(LEFT(`detail`,20),'...') AS `detail` FROM `movies` LIMIT {$num} OFFSET {$offset} ";$stmt = $pdo->prepare($sql);$stmt->execute();$movies = $stmt->fetchAll(PDO::FETCH_ASSOC);echo json_encode(['pages'=>$pages, 'movies'=>$movies]);