方便快捷的PHP长文章分页函数
Jun 13, 2016 am 11:09 AM
php
函數
分頁
我們
文章
的
今天我们就为大家写了一段PHP长文章分页函数,方便大家的代码编写:
- ?php
- function ff_page($content,$page)
- {
- global $expert_id;
- $PageLength = 2000; //每页字数
- $CLength = strlen($content);
-
$PageCount = floor(($CLength
/ $PageLength)) + 1; //计算页数 - $PageArray=array();
-
$Seperator = array("n",
"r","。","!","?",";
",",","”","’"); //分隔符号 - //echo "页数:".$PageCount." br>";
- //echo "长度:".$CLength." br> br> br>";
- //strpos() 函数返回字符串在
另一个字符串中第一次出现的位置 - if($CLength$PageLength)
- {
- echo $content;
- }else{
- $PageArray[0]=0;
- $Pos = 0;
- $i=0;
- //第一页
- for($j=0;$j sizeof($Seperator);$j++)
- {
- //echo $Seperator[$j];
-
$Pos=strpos($content,
$Seperator[$j],$PageArray[$i]+1900); -
while($Pos > 0 && $Pos
($i+1)*$PageLength &&
$Pos > $i*$PageLength ) - {
- $PageArray[$i] = $Pos ;
-
$Pos = strpos($Pos+$PageLength,
$content,$Seperator[$j]) ; - }
- if($PageArray[$i]>0)
- {
- $j = $j + sizeof($Seperator) + 1;
- }
- }
- //---
- for($i=1;$i $PageCount-1;$i++){
- for($j=0;$j sizeof($Seperator);$j++)
- {
- //echo $Seperator[$j];
-
$Pos=strpos($content,$Seperator
[$j],$PageArray[$i-1]+1900); -
while($Pos > 0 && $Pos
($i+1)*$PageLength && $Pos >
$i*$PageLength ) - {
- $PageArray[$i] = $Pos ;
-
$Pos = strpos($Pos+$PageLength,
$content,$Seperator[$j]) ; - }
- if($PageArray[$i]>0)
- {
- $j = $j + sizeof($Seperator) + 1;
- }
- }
- }
- //--PHP长文章分页函数最后一页
- $PageArray[$PageCount-1]=$CLength;
- //$page=2;
- if($page==1)
- {
-
$output=substr($content,0,
$PageArray[$page-1]+2); - }
- if($page>1 && $page =$PageCount)
- {
-
$output=substr($content,$PageArray
[$page-2]+2,$PageArray[$page-1]-$
PageArray[$page-2]); - $output=" (上接第".($page-1)."页)n".$output;
- }
-
echo str_replace("n"," br>
",$output); - //if($page==$PageCount)
-
//return $output=substr($content,
$PageArray[$page-2]+2,$PageArray[$page-1]-$PageArray[$page-2]); - if($PageCount>1)
- {
- echo " br> br> br> center>";
- echo "font color='ff0000'>".$page." /font>/".$PageCount." 页 ";
- if($page>1)
- echo " a href=$PHP_SELF?expert_id=$expert_id&page_t=".($page-1).">上一页 /a> ";
- else
- echo "上一页 ";
- for($i=1;$i =$PageCount;$i++)
- {
- echo " a href=$PHP_SELF?expert_id=$expert_id&page_t=".$i.">[".$i."] /a> ";
- }
- if($page$PageCount)
- echo " a href=$PHP_SELF?expert_id=$expert_id&page_t=".($page+1).">下一页 /a> ";
- else
- echo " 下一页 ";
- echo " /center>";
- }
- }
- }?>
PHP长文章分页函数的使用
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><span> ?php </span></span></span></li> <li> <span>$</span><span class="attribute">content1</span><span>=</span><span class="attribute-value">''</span><span>测试文字,<br>尽量长一些,www.corange.cn"; </span> </li> <li class="alt"> <span>$</span><span class="attribute">current</span><span>=$_REQUEST['page_t']; </span> </li> <li> <span>$</span><span class="attribute">result</span><span>=</span><span class="attribute-value">ff_page<br></span><span>($content1,$current); </span> </li> <li class="alt"><span>echo $result; </span></li> <li> <span class="tag">?></span><span> </span> </li> </ol>
登入後複製
PHP长文章分页函数的使用与实现的代码示例如上所示。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發
