1

我一直在寻找一种编写 php 搜索脚本的方法,该脚本将对结果进行分组,例如每页 10 个。

例如页面

 ______________________________
|           ________           |
| search:  |________| submit   |
|                              |
|                              |
|  ________________________    |
| |                      <-|---|------------<div id=results></div>
| |________________________|   |                         |
|______________________________|                         |
                                                         v
                                                      div which shows the results grouped  
                                                      by 10

例如:假设我按标签搜索图像,标签“爱”有 20 张图像。我怎样才能在一页上显示前 10 个结果,在另一页上显示最后 10 个结果。(第一页有指向第二页的链接,反之亦然)。

4

1 回答 1

0

一个提示是模运算符对于分页非常方便。它检查除法操作的剩余部分,当使用它进行分页时,它对应于新页面的零。

这是一个快速而肮脏的分页示例:

<?php

$arr = array();
for ( $x = 0; $x < 100; $x += 1 ) {
    $arr[] = $x;
};

$page = 7;
$per_page = 7;
$current_page = 1;
for ( $z = 0; $z < count( $arr ); $z += 1 ) {
    if ( 0 === ( $z % $per_page ) ) {
        $current_page += 1;
    }
    if ( $current_page === $page ) {
        echo "value $z on page $page\n";
    }
}


?>

~$ php pagination.php 
value 35 on page 7
value 36 on page 7
value 37 on page 7
value 38 on page 7
value 39 on page 7
value 40 on page 7
value 41 on page 7
于 2012-06-19T21:19:36.293 回答