php 分页方法

/** 分页方法
 * @param $page                   当前页码
 * @param $_total_page            总页数
 * @param $showPage               每页显示页码数量
 * @param $utl                    页面跳转地址
 * @param string $Parameter       页面跳转地址
 * @return string
 * 
 */
function Pagefunc($page, $_total_page, $showPage, $utl, $Parameter = "")
{
    $showPage = 9;
    $pageOffset = ($showPage - 1) / 2;//计算偏移量;
    $start = 1;//初始化数据;
    //加上分页效果
    $page_banner = '<div class="page">';//用来存放分页信息;
    if ($page > 1) {
        $page_banner .= '<a href="' . $utl . '?p=1' . $Parameter . '">首页</a>';
        $page_banner .= '<a href="' . $utl . '?p=' . ($page - 1) . $Parameter . '">上一页</a>';
    } else {
        $page_banner .= '<span class="disable">首页</span>';
        $page_banner .= '<span class="disable">上一页</span></a>';
    }
    if ($_total_page > $showPage) {
        if ($page > $pageOffset + 1) {
            $page_banner .= '...';
        }
        if ($page > $pageOffset) {
            $start = $page - $pageOffset;//计算起始位置;
            $end = $_total_page > $page + $pageOffset ? $page + $pageOffset : $_total_page;
        } else {
            $start = 1;
            $end = $_total_page > $showPage ? $showPage : $_total_page;
        }
        if ($page + $pageOffset > $_total_page) {
            $start = $start - ($page + $pageOffset - $end);
        }
    } else {
        $end = $_total_page;
    }
//显示数字页码;
    for ($i = $start; $i <= $end; $i++) {
        if ($page == $i) {
            $page_banner .= '<span class="current">' . $i . '</span>';
        } else {
            $page_banner .= '<a href="' . $utl . '?p=' . $i . $Parameter . '">' . $i . '</a>';

        }
    }
//尾部省略;
    if ($_total_page > $showPage && $_total_page > $page + $pageOffset) {
        $page_banner .= "...";
    }

    if ($page < $_total_page) {
        $page_banner .= '<a href="' . $utl . '?p=' . ($page + 1) . $Parameter . '">下一页</a>';
        $page_banner .= '<a href="' . $utl . '?p=' . $_total_page . $Parameter . '">尾页</a>';
    } else {
        $page_banner .= '<span class="disable">下一页</span>';
        $page_banner .= '<span class="disable">尾页</span></a>';
    }
    return $page_banner;
}

/**
 * 获取参数转换url
 * @return string
 */
public function UrlParameter()
{
    $data = array(
        'Audit' => $_REQUEST["Audit"],
        'StartTime' => $_REQUEST["StartTime"],
        'StopTime' => $_REQUEST["StopTime"],
        'CodeName' => $_REQUEST["CodeName"],
    );
    $str = '';
    foreach ($data as $key => $val) {
        $str .= '&' . "$key=" . urlencode($val);
    }

    return $str;
}

    //css样式

.page{
    text-align: center;
    margin: 20px;
    font-family: verdana, arial, sans-serif;
}
.page form{
    display: inline;
    margin: 0 5px;
}
.btn{
    display: inline;
    border: none;
    padding: 3px 12px;
    background:#0078b3 ;
    margin:0 5px;
    color: #FFffff;
    font-weight: 800
}
.page a{
    border: 1px solid #009688;
    color:#000000;
    text-decoration: none;
    padding: 2px 5px;
    margin: 2px;
}
.page span.current{
    border: 1px solid #009688;
    background: #009688;
    text-decoration: none;
    padding: 2px 6px;
    margin: 2px;
    color: #FFffff;
}
.page span.disable{
    border: 1px solid #eee;
    text-decoration: none;
    padding: 2px 5px;
    margin: 2px;
    color: #ddd;;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值