新手在项目中模仿sg的分页器. 求指点

阿飞i
  • 628
<?php if($countPage > 1):?>
<div class="pagination-1 pagination">
    <div class="nextPrev-1">
        <ul style="overflow:hidden;">
            <?php if($currentPage > 1):?><li><a href="<?php echo query_url_build('p', $prev)?>">上一页</a></li><?php endif;?>
            <?php if($currentPage >= 5 && $countPage >= $currentPage):?>
                <li><a href="<?php echo query_url_build('p',1)?>">1</a></li>
                <li>...</li>
            <?php endif;?>
            <?php
                $count = ($countPage < 5 ? $countPage : '') ? $countPage : 5;
                for($i = 0; $i < $count; $i++):
                    $index = 0; 
                if($currentPage/5 >= 1){
                    $index = (($currentPage-5)%3 == 0) ? ($currentPage-5)/3 + 1 : floor(($currentPage-5)/3 + 1);
                    }
                $number = 3 * $index + $i + 1;
                ?>
                <li class="<?php echo ((@$_GET['p'] == $number) || (empty($_GET['p'])&&$number==1)) ? 'currentPage' : '';?>">
                    <a href="<?php echo query_url_build('p', $number)?>"><?php echo $number;?></a>
                </li>
            <?php if($number == $countPage){break;} endfor;?>
            <?php if($countPage !== (int)$number):?><li><a>...</a></li><?php endif;?>
            <li><a href="<?php echo query_url_build('p', $next)?>">下一页</a></li>
            <li><a href="<?php echo query_url_build('p', $countPage)?>">末页</a></li>
        </ul>
    </div>
</div>
<?php endif;?>

我只拿到了四条数据,当前页,总页,上一页,下一页;
有没有别的写法 , 我想我这种很低劣吧

回复
阅读 1.9k
1 个回答

使用Laravel做分页的输出,可以一行代码搞定,很优雅!具体参照它的API

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏