THINKPHP内容分页代码分享

yipeiwu_com6年前PHP代码库

在使用Thinkphp开发的内容管理系统里面,很多东西都要自己开发,内容分页当然也是要自己开发的,下面是我根据查资料自己整理的方法:

1、首先是在后台编辑内容的时候需要插入分页符,不同的编辑器分页符自然也不同了

2、然后就是读取文章内容的时候,要根据分页符来把内容分割成多个数组然,这里需要传值当前是第几页,根据页数来读取分割后的数组

代码如下:

复制代码 代码如下:

<php>
    $arr_con=explode('_ueditor_page_break_tag_',$dy['art_content']);//分割内容
    $pagenum=count($arr_con);//计算页数
    //根据传值判断当前显示页数
    if(intval($_GET['p'])==0){
    $p=1;
    }else{
    $p=intval($_GET['p']);
    }
    //获得当前页的url
    $url  =  $_SERVER['REQUEST_URI'].(strpos($_SERVER['REQUEST_URI'],'?')?'':"?");
    $parse = parse_url($url);
    if(isset($parse['query'])) {
        parse_str($parse['query'],$params);
        unset($params['p']);
        $url   =  $parse['path'].'?'.http_build_query($params);
    }
    //有多少页都全部循环出来
    for($i=1;$i<=$pagenum;$i++){
    if($i==$p){
        $show.='<span style="color:#f00;">['.$i.']</span>';
    }
    else{
        $show.='<a href="'.$url.'&p='.$i.'">['.$i.']</a>';
    }
    }
    // dump($arr_con);
    $show=$pagenum==1?'':$show;//分页代码显示判断
</php>
{$arr_con[$p-1]}<!--这里是刚进入这篇文章显示的数据,数组键值从0开始-->

 
注意:如果使用的Thinkphp,并且配置了静态化,

则修改配置文件'News:article'=>array('{:module}/{:action}_{art_id}_{p}',0),加个p参数

以上仅供参考,具体还要根据自己具体项目来调整,相信小伙伴们能够将其扩展的很好。

相关文章

解决ThinkPHP关闭调试模式时报错的问题汇总

案例一: 最近用ThinkPHP开发一个项目,本地开发测试完成上传到服务器后,第一次打开正常,再刷新页面时就出现 “页面调试错误,无法找开页面,请重试”的错误. 我就郁闷啦,明明本地设置...

PHP使用自定义方法实现数组合并示例

PHP使用自定义方法实现数组合并示例

本文实例讲述了PHP使用自定义方法实现数组合并。分享给大家供大家参考,具体如下: 在PHP中提供了强大的数组功能,对于数组的合并也提供了两个方法:array_merge 和 array_...

解析PHP获取当前网址及域名的实现代码

复制代码 代码如下:<?//获取当前的域名:echo $_SERVER['SERVER_NAME'];//获取来源网址,即点击来到本页的上页网址echo $_SERVER["HTT...

PHP session会话的安全性分析

PHP session会话的安全性分析

从而达到方便快捷的目的,但是它在存储信息的时候往往会有一些敏感的东西,这些东西可能成为被攻击的目标,如银行的账号、信用卡事务或档案记录等。这就要求在编写代码的时候必须采取安全措施来减少攻...

PHP中4个加速、缓存扩展的区别和选用建议

折腾VPS的朋友,在安装好LNMP等Web运行环境后都会选择一些缓存扩展安装以提高PHP运行速度,常被人介绍的有eAccelerator、memcached、xcache、Alterna...