ThinkPHP 3.2自定义分页页码

原版的分页代码中的类名是写死了的,换个前端框架就不能匹配了。
想了半天,自己写了生成Semantic UI分页代码的函数。
可以根据总页码适应,使当前最多出现10个页码,而不是总共有多少页就出现多少页码。

function semanticPage($totalPage,$currPage,$urlFuncParam){
    // 参数为总页数,当前页码,U方法生成url使用的参数,比如说"Admin/Index/Article?p="
    $html="<div class='ui right floated pagination menu'>";
    if($currPage!=1){
        $html.='<a href="'.U($urlFuncParam.($currPage-1)).'" class="icon item"><i class="left chevron icon"></i></a>';
    }
    if($totalPage<10){
        for($i=1;$i<$totalPage;$i++){
            if($i==$currPage){
                $html.='<a href="'.U($urlFuncParam.$i).'" class="item active">'.$i.'</a>';
            }else{
                $html.='<a href="'.U($urlFuncParam.$i).'" class="item">'.$i.'</a>';
            }
            
        }
    }else{
        if($currPage<5){
            for($i=1;$i<=10;$i++){
                if($i==$currPage){
                    $html.='<a href="'.U($urlFuncParam.$i).'" class="item active">'.$i.'</a>';
                }else{
                    $html.='<a href="'.U($urlFuncParam.$i).'" class="item">'.$i.'</a>';
                }
            }
        }else if($totalPage-$currPage<5){
            for($i=$totalPage-9;$i<=$totalPage;$i++){
                if($i==$currPage){
                    $html.='<a href="'.U($urlFuncParam.$i).'" class="item active">'.$i.'</a>';
                }else{
                    $html.='<a href="'.U($urlFuncParam.$i).'" class="item">'.$i.'</a>';
                }
            }
        }else{
            for($i=$currPage-4;$i<=$currPage+5;$i++){
                if($i==$currPage){
                    $html.='<a href="'.U($urlFuncParam.$i).'" class="item active">'.$i.'</a>';
                }else{
                    $html.='<a href="'.U($urlFuncParam.$i).'" class="item">'.$i.'</a>';
                }
            }
        }
    }
    if($currPage!=$totalPage){
        $html.='<a href="'.U($urlFuncParam.($currPage+1)).'" class="icon item"><i class="right chevron icon"></i></a>';
    }
    $html.="</div>";
    return $html;
}
添加新评论