程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP實現適用於文件內容操作的分頁類

PHP實現適用於文件內容操作的分頁類

編輯:PHP綜合

本文實例為大家分享了PHP實現文件內容操作的分頁類,強調一下只針對文件的操作,供大家參考,具體內容如下

<?php 
class StrPage {
 private $current;  //當前頁 
 private $file;  //操作文件
 private $totalPage;  //總的頁數
 private $url;  //傳遞的參數
 private $pageLen;  //每頁顯示的長度
 
 function __construct( $file,$len = 200 ){
 $this->file = file_get_contents($file);
 $this->pageLen = $len;
 $this->current = isset($_GET['page'])?$_GET['page']:1;
 $this->totalPage = $this->getTotalPage();
 $this->url = $this->getUrl();
 }
 
 
 //獲取到這個文件總的長度
 private function getTotalPage(){
 return ceil(strlen($this->file)/$this->pageLen);
 }
 
 //獲取當前傳遞的參數,保留參數,page參數動態變化
 private function getUrl(){
 $url =parse_url($_SERVER['REQUEST_URI']);
 parse_str($url['query'],$queryArr);
 unset($queryArr['page']);
 $queryStr = http_build_query($queryArr);
 return $url['path'].'?'.$queryStr.'&page='; 
 }
 
 
 //首頁
 private function first(){
 if($this->current>1)
  return "<a href='".$this->url."1'>首頁</a>";
 }
 //上一頁
 private function pre(){
 if( $this->current > 1 )
  return "<a href='".$this->url.($this->current-1)."'>上一頁</a>";
 }
 //下一頁
 private function next(){
 if( $this->current < $this->totalPage)
  return "<a href='".$this->url.($this->current+1)."'>下一頁</a>";
 }
 //最後一頁
 private function end(){
 if( $this->current < $this->totalPage )
  return "<a href='".$this->url.$this->totalPage."'>末頁</a>";
 }
 
 public function pageList(){
 $pageListStr = '';
 for ($i=1;$i<=$this->totalPage;$i++){
  if($i==$this->current){
  $pageListStr.="<span style='font-size:20px;color:#f00'>".$i."</span> ";
  }else{
  $pageListStr.="<a href='".$this->url.$i."'>".$i." </a>";
  }
 }
 return $pageListStr;
 }
 
 public function pageStyle($style=1){
  switch ($style){
  case 1:
   return "共有".$this->totalPage."頁".$this->first().$this->pre().$this->pageList().$this->next().$this->end();
   break;
  case 2;
  return $this->pageList();
  break;
  }
 }
 
 public function getContents(){
 $prePageLen = strlen($this->subStrs($this->current-1));
 $currentPageLen = strlen($this->subStrs($this->current));
 return substr($this->file, $prePageLen,$currentPageLen-$prePageLen);
 }
 
 public function subStrs($page){ 
  $string = '';
  $len= $page*$this->pageLen;
  for( $i=0; $i<$len; $i++ ){
   if( ord(substr($this->file,$i,1))>0xa0 ){
   $string .= substr($this->file,$i,3);
   $i = $i+2;
  }else{
   $string .= substr($this->file, $i,1);
  }
  }
  return $string;
  
 }
 
}

精彩專題分享:php分頁功能操作

以上就是本文的全部內容,希望對大家學習PHP程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved