首页 php教程 PHP源码 php 简单简洁分页类

php 简单简洁分页类

Jun 08, 2016 pm 05:28 PM
gt nbsp page quot this

<script>ec(2);</script>

php 简单简洁分页类
/**
 *-------------------------翻页类----------------------*
 */
class PageClass
{
 private $myde_count;       //总记录数
 var $myde_size;        //每页记录数
 private $myde_page;        //当前页
 private $myde_page_count;  //总页数
 private $page_url;         //页面url
 private $page_i;           //起始页
 private $page_ub;          //结束页
 var $page_limit;
 
 function __construct($myde_count=0, $myde_size=1, $myde_page=1,$page_url)//构造函数
 { 
  
  $this -> myde_count = $this -> numeric($myde_count);
  $this -> myde_size  = $this -> numeric($myde_size);
  $this -> myde_page  = $this -> numeric($myde_page);
  $this -> page_limit = ($this -> myde_page * $this -> myde_size) - $this -> myde_size;
  
  $this -> page_url       = $page_url;
  
  if($this -> myde_page myde_page =1;
  
  if($this -> myde_count myde_page =0;
  
  $this -> myde_page_count  = ceil($this -> myde_count/$this -> myde_size);
  
  if($this -> myde_page_count myde_page_count = 1;
  
  if($this -> myde_page > $this -> myde_page_count) $this -> myde_page = $this -> myde_page_count;
  
  $this -> page_i = $this -> myde_page - 2;
  
        $this -> page_ub = $this -> myde_page + 2;
  
        if($this -> page_i   
            $this -> page_ub = $this -> page_ub + (1 - $this -> page_i);
   
            $this -> page_i = 1;
        }
       
        if($this -> page_ub > $this -> myde_page_count){
  
            $this -> page_i = $this -> page_i - ($this -> page_ub - $this -> myde_page_count);
   
            $this -> page_ub = $this -> myde_page_count;
   
            if($this -> page_i page_i = 1;
        }
 }
 
 
 private function numeric($id) //判断是否为数字
 {
  if (strlen($id)){
      if (!ereg("^[0-9]+$",$id)){
    $id = 1;
      }else{
    $id = substr($id,0,11);
    }
  }else{
   $id = 1;
  }
  return $id;
 }
 
 private function page_replace($page) //地址替换
 {
  return str_replace("{page}", $page, $this -> page_url);
 }
 
 
 private function myde_home() //首页
 {
  if($this -> myde_page != 1){
  
   return "   

  • page_replace(1).""  title="首页" >首页
  • n";
       
      }else{
      
       return "   
  • 首页
  • n";
       
      }
     }
     
     private function myde_prev() //上一页
     {
      if($this -> myde_page != 1){
      
       return "   
  • page_replace($this->myde_page-1) .""  title="上一页" >上一页
  • n";
       
      }else{
      
       return "   
  • 上一页
  • n";
       
      }
     }
     
     private function myde_next() //下一页
     {
      if($this -> myde_page != $this -> myde_page_count){
      
        return "   
  • page_replace($this->myde_page+1) .""  title="下一页" >下一页
  • n";
        
      }else{
      
       return "   
  • 下一页
  • n";
       
      }
     }
     
     private function myde_last() //尾页
     {
      if($this -> myde_page != $this -> myde_page_count){
      
        return "   
  • page_replace($this -> myde_page_count).""  title="尾页" >尾页
  • n";
        
      }else{
      
       return "   
  • 尾页
  • n";
       
      }
     }
     
     function myde_write($id='page') //输出
     {
      $str  = "
      n  ";
        
        $str .= " 
    • 总记录:".$this -> myde_count."
    • n";
        
        $str .= "   
    • ".$this -> myde_page."/".$this -> myde_page_count."
    • n";
        
        $str .= $this -> myde_home();
        
        $str .= $this -> myde_prev();
        
        for($page_for_i = $this -> page_i;$page_for_i page_ub; $page_for_i++){
        
         if($this -> myde_page == $page_for_i){
         
                   $str .= "   
    • ".$page_for_i."
    • n";
          
         }
         
         else{
         
          $str .= "   
    • page_replace($page_for_i)."" title="第".$page_for_i."页">";
          
          $str .= $page_for_i . "
    • n";
          
         }
              }
        $str .= $this -> myde_next();
        
        $str .= $this -> myde_last();
        
        $str .= "   
    • myde_page.""";
        
        $str .= " onkeydown="javascript: if(event.keyCode==13){ location='";
        
        $str .= $this -> page_replace("'+this.value+'")."';return false;}"";
        
        $str .= " title="输入您想要到达的页码" />
    • n";
        
        $str .= " 
    n
    ";
      
      return $str;
     }
    }
    /*-------------------------实例--------------------------------*
    $page = new PageClass(1000,5,$_GET['page'],'?page={page}');//用于动态
    $page = new PageClass(1000,5,$_GET['page'],'list-{page}.html');//用于静态或者伪静态
    $page -> myde_write();//显示
    */
    ?>
    本站声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

    热门文章

    两个点博物馆:邦格荒地地点指南
    4 周前 By 尊渡假赌尊渡假赌尊渡假赌
    仓库:如何复兴队友
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌
    Hello Kitty Island冒险:如何获得巨型种子
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌

    热门文章

    两个点博物馆:邦格荒地地点指南
    4 周前 By 尊渡假赌尊渡假赌尊渡假赌
    仓库:如何复兴队友
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌
    Hello Kitty Island冒险:如何获得巨型种子
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌

    热门文章标签

    记事本++7.3.1

    记事本++7.3.1

    好用且免费的代码编辑器

    SublimeText3汉化版

    SublimeText3汉化版

    中文版,非常好用

    禅工作室 13.0.1

    禅工作室 13.0.1

    功能强大的PHP集成开发环境

    Dreamweaver CS6

    Dreamweaver CS6

    视觉化网页开发工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神级代码编辑软件(SublimeText3)

    解决方法:您的组织要求您更改 PIN 码 解决方法:您的组织要求您更改 PIN 码 Oct 04, 2023 pm 05:45 PM

    解决方法:您的组织要求您更改 PIN 码

    Windows 11 上调整窗口边框设置的方法:更改颜色和大小 Windows 11 上调整窗口边框设置的方法:更改颜色和大小 Sep 22, 2023 am 11:37 AM

    Windows 11 上调整窗口边框设置的方法:更改颜色和大小

    Windows 11 上启用或禁用任务栏缩略图预览的方法 Windows 11 上启用或禁用任务栏缩略图预览的方法 Sep 15, 2023 pm 03:57 PM

    Windows 11 上启用或禁用任务栏缩略图预览的方法

    如何在 Windows 11 上更改标题栏颜色? 如何在 Windows 11 上更改标题栏颜色? Sep 14, 2023 pm 03:33 PM

    如何在 Windows 11 上更改标题栏颜色?

    OOBELANGUAGE错误Windows 11 / 10修复中出现问题的问题 OOBELANGUAGE错误Windows 11 / 10修复中出现问题的问题 Jul 16, 2023 pm 03:29 PM

    OOBELANGUAGE错误Windows 11 / 10修复中出现问题的问题

    华为GT3 Pro和GT4的差异是什么? 华为GT3 Pro和GT4的差异是什么? Dec 29, 2023 pm 02:27 PM

    华为GT3 Pro和GT4的差异是什么?

    Windows 11 上的显示缩放比例调整指南 Windows 11 上的显示缩放比例调整指南 Sep 19, 2023 pm 06:45 PM

    Windows 11 上的显示缩放比例调整指南

    10种在 Windows 11 上调整亮度的方法 10种在 Windows 11 上调整亮度的方法 Dec 18, 2023 pm 02:21 PM

    10种在 Windows 11 上调整亮度的方法

    See all articles