PHP分页自定义页码

时间:2017-06-14 01:25:04

标签: php pagination

如何自定义下面的分页页码?

电流:

enter image description here

我想要的是:

1 2 3 4 5 Next Last Page

这是PHP代码:

for($i=1; $i<=$Num_Pages; $i++)
{
    if($i != $Page)
    {
        echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
    }
    else
    {
        echo "<b> $i </b>";
    }
}

有任何线索如何做到这一点?

2 个答案:

答案 0 :(得分:1)

$start_page = intval($Page / 5) *5 + 1;  
$to_page = $start_page + 4;
$is_last_group = ($start_page + 5)> $Num_Pages);
if (is_last_group) 
   $to_page = $Num_Pages;  
for($i = $start_page; $i <= to_page; $i++)
    {
        if($i != $Page)
        {
            echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
        }
        else
        {
            echo "<b> $i </b>";
        }
    }
if($page < $Num_Pages){
       $next_page = $page + 1;
       echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$next_page '>next</a> ]";
       echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$Num_Pages'>last</a> ]";
}

答案 1 :(得分:1)

可以试试这个:

$Num_Pages = 70;

//$Page = $_GET['Page'];
$Page = 12;
$from = $Page - ($Page % 5) + 1;

for($i=$from; $i<$from+5 && $i<$Num_Pages; $i++)
{
    if($i != $Page)
    {
        echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
    }
    else
    {
        echo "<b> $i </b>";
    }
}
$next_page = $Page+1;
echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$next_page '>next</a> ]";
echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$Num_Pages'>Last Page</a> ]";

$Page = 12替换为$_GET以动态获取页面。

没有真正测试过它。