`

分页函数

阅读更多
////实现分页显示
/* $pageCount  记录总数
 * $pageSize   每页显示记录条数
 * $pageTotalNumber 总页数
 * $pageURL    本页面的url
 * $pageMenuLimit 分页条显示的最大数目
 */
function showPage($pageCount,$pageSize,$pageMenuLimit){
    $pageTotalNumber = intval(ceil($pageCount/$pageSize));
    $pageURL = $_SERVER["REQUEST_URI"];
    //当前页的页数,从REQUEST获得
    if(isset($_GET['pageId'])&& !empty($_GET['pageId'])){
        $pageURL =  str_replace('pageId='.$_GET['pageId'], 'pageId=', $pageURL);
        $pageId = intval($_GET['pageId']);
    }else{
        //第一次访问
        $pageId = 1;
        $pageURL .= strpos($pageURL, '?')===false ? '?pageId=' : '&pageId=';
    }
    //每页的起,始记录数
    if ($pageId == 1 ) {
        $pageStartNum = 0;
    } else {
         $pageStartNum = ($pageId -1) * $pageSize;
    }
    $pageMenuMiddle = intval(ceil($pageMenuLimit/2));
    $pageEndNum = $pageStartNum + $pageSize;
    $pageDisplay = ($pageTotalNumber <= $pageMenuLimit) ? $pageTotalNumber : $pageMenuLimit;//分页条显示页面数字限制
    if($pageTotalNumber>1){
        if($pageId == 1){
            $pageLinks = "<span class='current'>".$pageId."</span>";
            for($i=$pageId+1;$i<=$pageDisplay;$i++){
                $pageLinks .= "<a href=".$pageURL.$i.">".$i."</a>";
            }
            $pageLinks .= "<a href=".$pageURL.($pageId+1).">&gt;</a>";
        } else if($pageId >1&&$pageId<$pageTotalNumber){
            $pageLinks = "<a href=".$pageURL.($pageId-1).">&lt;</a>";
            if(($pageId>$pageMenuMiddle)&&($pageId<$pageTotalNumber-$pageMenuMiddle+1)){
                for($i=$pageId-$pageMenuMiddle+1;$i<=$pageId+$pageMenuMiddle-1;$i++){
                    if($i == $pageId){
                        $pageLinks .= "<span class='current'>".$pageId."</span>";
                    } else {
                        $pageLinks .= "<a href=".$pageURL.$i.">".$i."</a>";
                    }
                }
            } else if($pageId <= $pageMenuMiddle) {
                for($i=1;$i<=$pageDisplay;$i++){
                    if($i == $pageId){
                        $pageLinks .= "<span class='current'>".$pageId."</span>";
                    } else {
                        $pageLinks .= "<a href=".$pageURL.$i.">".$i."</a>";
                    }
                }
            } else if($pageId>=$pageTotalNumber-$pageMenuMiddle+1) {
                for($i=$pageTotalNumber-$pageDisplay+1;$i<=$pageTotalNumber;$i++){
                    if($i == $pageId){
                        $pageLinks .= "<span class='current'>".$pageId."</span>";
                    } else {
                        $pageLinks .= "<a href=".$pageURL.$i.">".$i."</a>";
                    }
                }
            }
            $pageLinks .= "<a href=".$pageURL.($pageId+1).">&gt;</a>";
        } else{
            $pageLinks = "<a href=".$pageURL.($pageId-1).">&lt;</a>";
            for($i=$pageTotalNumber-$pageDisplay+1;$i<$pageTotalNumber;$i++){
                $pageLinks .= "<a href=".$pageURL.$i.">".$i."</a>";
            }
            $pageLinks .= "<span class='current'>".$pageId."</span>";
        }
    }
    $aryPage['count']     = $pageCount;
    $aryPage['startNum']  = $pageStartNum;
    $aryPage['endNum']    = $pageEndNum;
    $aryPage['links']     = $pageLinks;
    $aryPage['pageId']    = $pageId;
    $aryPage['totalPage'] = $pageTotalNumber;
    return $aryPage;
}

 回头还得把html代码 抽离出来,用str_replace实现分离

 

分享到:
评论

相关推荐

    一个简单的 php 分页 函数

    - **示例文件**:演示如何使用分页函数,通常包含数据库连接、SQL查询、调用分页函数以及展示结果的代码。 使用这个分页函数,开发者可以在自己的项目中轻松实现分页功能。例如,你可以先执行SQL查询获取总记录数,...

    asp分页函数(无错版)

    总之,ASP分页函数是提升网站性能和用户体验的重要工具,一个良好的分页函数应该具备稳定、可定制、高效等特点。通过学习和理解`pageCute.asp`中的实现,你可以更好地掌握在ASP环境中如何优雅地处理分页问题。

    PHP编写的分页函数

    用PHP编写的分页函数,配合bootstrap的css文件,分页会更好看

    一个分页函数

    ### 分页函数知识点详解 #### 一、分页功能的重要性及应用场景 在Web开发中,分页是一项非常实用的功能,特别是在处理大量数据时。当一个网站或应用需要展示的数据量非常大时,如果一次性加载所有数据,不仅会增加...

    php 简单内容分页函数

    本篇文章将详细讲解如何创建一个简单的PHP内容分页函数。 首先,我们需要理解分页的基本原理。分页的核心是计算出每一页应该显示的数据量以及当前页的数据范围。假设我们有一个数据集合,总共有`$total_items`条...

    Discuz 分页函数

    `Discuz 分页函数`就是实现这一功能的核心组件,它允许用户在浏览帖子或文章时,轻松地跳转到不同的页面。 分页的基本原理是通过计算总记录数、每页显示的记录数以及当前页码来确定应该显示哪些数据。Discuz 的分页...

    sqlserver2005分页函数

    一个非常好的sql2005分页函数,简单实用,希望对你有所帮助

    自己写的一个比较实用的php分页函数

    在优化方面,这个分页函数可能会考虑以下几点: - 性能优化:避免每次都计算总页数,可以缓存或预计算。 - 错误处理:检查用户输入的页码是否有效,防止非法访问。 - 用户体验:提供“跳转到指定页”功能,方便用户...

    sql分页函数

    数据库分页函数的使用

    php分页函数

    里面包含php分页函数、php分类分页函数 调用 include 'page.php'; ?&gt; //sql查询 $sqld=""; genpage($sqld,8); ?&gt; 在分页那边调用 ();?&gt; //分类分页 (分类id);?&gt;

    asp 分页函数、分页类

    非常好用的分页类,很容易定制各种风格,可以与网上流行的 《24款超实用的Web 2.0风格翻页页码css代码》 完美无缝连接。你所做的,就是改个div的名字而已。另外懂点儿CSS的朋友甚至可以轻松实现仿Google的翻页样式。至...

    asp分页函数-简单实用的分页

    "asp分页函数-简单实用的分页" 主要关注的是如何在ASP中实现高效的分页效果。 在ASP中实现分页,我们需要考虑以下几个关键知识点: 1. 数据库查询:首先,我们需要从数据库中获取数据,通常使用SQL查询语句。比如...

    内容分页函数(可以设置分页字数)

    标题提到的"内容分页函数(可以设置分页字数)"正是解决这个问题的一个自定义函数。这个函数允许开发者根据指定的字数来分割内容,从而实现动态的、可定制化的分页效果。 首先,我们需要理解分页的基本原理。分页通常...

    PHP分页程序,简单的分页函数

    这个“PHP分页程序,简单的分页函数”就是为了解决这个问题而设计的。...在实际项目中,你可以根据具体需求对这个基础分页函数进行扩展和优化,例如添加CSS样式、处理错误情况、支持跳转到任意页等功能。

    一个非常不错的PHP分页函数

    标题提到的“一个非常不错的PHP分页函数”就是一个专为此目的设计的高效工具,它允许开发者自定义样式,适应不同的项目需求。 首先,我们来理解一下PHP分页的基本概念。分页主要是通过计算总页数,然后根据当前页码...

    phpcms 分页函数修改支持form跳转

    本话题主要探讨如何修改phpcms的分页函数,使其能与表单提交相结合,实现带有表单数据的分页跳转。 首先,我们需要了解phpcms的分页原理。phpcms采用的是服务器端分页,通过计算数据库查询结果的数量和每页显示的...

    简单的PHP分页函数类.zip

    通过这样的分页函数类,开发者可以避免重复编写分页逻辑,提高代码的复用性和维护性。同时,这个简单的类也为初学者提供了一个学习PHP面向对象编程和数据库操作的好起点。在实际项目中,可以根据具体需求对这个类...

    一个php的分页函数类.zip

    分页函数类通常会提供以下方法: 1. **构造函数**:初始化类,接收每页最大数量、当前页等参数。 2. **计算总页数**:根据总记录数和每页显示数进行计算。 3. **设置和获取每页显示数**:允许动态调整每页显示的...

    ASP多功能新闻分页函数 v2.0

    【ASP多功能新闻分页函数 v2.0】是一款专为ASP(Active Server Pages)开发者设计的高效、灵活的分页工具。它集成了多种功能,适用于处理新闻、文章或其他需要分页显示的数据列表,帮助开发者在网页上实现美观且实用...

    php+mysql数据分页函数

    // 调用分页函数 $pageInfo = pageFun($sql, $limit, $currentPage); // 输出数据 while ($row = mysqli_fetch_assoc($pageInfo['data'])) { echo "User ID: " . $row['id'] . ", Name: " . $row['name'] . " ...

Global site tag (gtag.js) - Google Analytics