php文章分页代码,php 文章内容分页代码

class contentpage

{

private $content; //文章内容

private $pagesize; //每页最少字节数

private $breakflag; //分页符(可以自定义,默认为n)

private $pageurl; //url地址

private $pagevar; //分页参数

public $pagecount; //总页数

public $page; //当前页码

public $pagebreak; //每页起始位置

function __construct($content = "",$pagesize = 10,$breakflag ="n",$pageurl = '',$pagevar = 'p')

{

$this->content = $content;

$this->pagesize = $pagesize;

$this->breakflag = $breakflag;

$this->pageurl = $pageurl;

$this->pagevar = $pagevar;

$this->getpages();

}

//总页数,每页的起始位置和结束位置

public function getpages()

{

$contentlen = strlen($this->content); //文章总字节数

$this->pagebreak[0] = 0;

$i = 0;

$offset = $this->pagesize;

for ($k=0;$kpagesize;$k++)

{

if($offset > $contentlen)

{

$i++;

$this->pagebreak[$i] = $contentlen;

break;

}

//查找$this->pagevar出现的位置

$where = strpos($this->content,$this->breakflag,$offset);

if($where > $contentlen or intval($where) < 1)

{

$i++;

$this->pagebreak[$i] = $contentlen;

break;

}

else

{

$i++;

$this->pagebreak[$i] = $where;

$offset = $where + $this->pagesize;

}

}

$this->pagecount = $i;

if(isset($_get[$this->pagevar]) && $_get[$this->pagevar] >1 && $_get[$this->pagevar] <= $this->pagecount)

{

$this->page = $_get[$this->pagevar];

}

else

{

$this->page = 1;

}

}

//每页内容

function getpage()

{

//截取当前页码的数据

if($this->page > 1)

{

return substr($this->content,$this->pagebreak[$this->page-1]+1,$this->pagebreak[$this->page] - $this->pagebreak[$this->page-1]);

}

else

{

return substr($this->content,$this->pagebreak[$this->page-1],$this->pagebreak[$this->page] - $this->pagebreak[$this->page-1]);

}

}

//分页条

public function getpagenav()

{

if($this->page > 1)

{

$pagenav = "上一页 ";

}

//输出数字页码

for($j=1;$j<=$this->pagecount;$j++)

{

if($j == $this->page)

{

$pagenav .= "".$j." ";

}

else

{

$pagenav .= "".$j." ";

}

}

//下一页

if($this->page < $this->pagecount && $this->pagecount >1)

{

$pagenav .= "下一页 ";

}

return $pagenav;

}

//获取url地址

public function geturl()

{

$url = $_server['request_uri'];

$parse_url = parse_url($url);

$query_url = $parse_url['query'];

if($query_url)

{

$query_url = ereg_replace("(^|&)".$this->pagevar."=".$this->page,"",$query_url);

$url = str_replace($parse_url['query'],$query_url,$url);

if($query_url)

{

$url .= "&".$this->pagevar;

}

else

{

$url .= $this->pagevar;

}

}

else

{

$url .= "?".$this->pagevar;

}

return $url;

}

}

$content = "第一页:文章内容分页阿斯顿浪费空间阿斯顿来看福建省地方吉林省福建路口附近大手拉飞机上浪费的说浪费监理费

第二页:阿斯顿房间阿双方了解啊对萨拉开发记得谁来付款将令对方空间的来福建阿里是否

第三页:欧文炯诶哦生地拉开方面来看就继续超文章内容分页滤机蓝卡

第四页:欧文日据拉萨及发动四分啊就双方的将爱是发觉是文章内容分页否了。";

$model = new contentpage($content);

echo $model->getpage(); //输出分页内容

echo $model->getpagenav(); //输出页码

?>

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值