`

php对长文章进行分页处理

    博客分类:
  • PHP
阅读更多

具体效果请查看http://www.leisongwang.com

设计的初衷是:文章列表页,如果用strip_tags删除了所有的样式,则首页的文章简介会显得很乱,没有样式。如果简单的用strip_tags保留p或者br,那么再截取字符串时会有p或者br被截断的情况。

设计思路为:保留p和br,然后替换p为br;再以br为分隔符对整个文章进行分隔。

具体代码如下:可直接使用

/**
* 长文章分段
* @param string $article 文章内容
* @param number $return_number 文章字节限制
* @return array
*/
private function ContentAddpage($content,$return_number=800){
    $return_content = "";    //返回的字符串
    $current_num = 0;        //当前字符串长度
    $return_content_num = 0; //上次字符串截取后的长度;用来处理最后数组中字数过长的case.
    $page_num_word = array();//以br为分隔符使用preg_split分隔字符串生成的数组;

    $content = strip_tags($content,'<p>,<br>');
    $content = preg_replace("/<p(.*?)>/m", "<br>",  $content);
    $content = str_replace("</p>","",  $content);
    $content = preg_replace("/<br(.*?)>/m", "<br>",  $content);
    $content_info = preg_split("/\<br\>/",$content);//根据字符串确定段落
    $art_num = count($content_info);//确定段落数

    for($i=0;$i <= $art_num-1;$i++){
        $page_num_word[$i] = strlen($content_info[$i]);
        $current_num += $page_num_word[$i];//得到字数
        if ($current_num <= $return_number){
            $tmp_num = $return_number-$current_num;
            $return_content .= mb_substr($content_info[$i],0,$tmp_num)."<br>";
            $return_content_num = $current_num;
        }else{
            $tmp_num = $return_number-$return_content_num;
            $return_content .= mb_substr($content_info[$i],0,$tmp_num)."<br>";
            break;
        }
    }
    return $return_content;
}

 原始文章:http://www.leisongwang.com/blogs/info?id=537cacd8c9a3t

分享到:
评论

相关推荐

    php长文章分页 php长文章分页

    在PHP开发中,长文章分页是一个常见的需求,特别是在处理新闻、博客或论坛等大量文本内容的场景。分页能够帮助用户更有效地浏览和阅读,同时减轻服务器的负载。本篇将深入探讨PHP实现长文章分页的关键技术和方法。 ...

    php长文章分页

    "php长文章分页"这个主题涉及到的核心知识点包括数据分块、查询优化、URL参数处理以及用户界面设计。下面将详细阐述这些内容。 1. 数据分块: 长篇文章存储在数据库中时,一次性加载全部内容可能会消耗大量资源,...

    长文章分页类

    首先,"长文章分页类"指的是一个PHP类,它专门用于处理长篇幅的文章内容,将文章分割成多个页面,以便用户逐页浏览。这种类通常包含以下核心功能: 1. **参数接收**:接收文章总长度、每页显示的字数以及当前页码等...

    php中长文章分页显示实现代码

    在长文章分页显示实现代码中,我们使用 strlen() 函数来获取文章内容的总字节数,以便于后续的分页处理。 知识点 2:strpos() 函数 strpos() 函数是 PHP 中的一个字符串函数,用于返回字符串中首次出现的字节序数...

    长篇文章内容分页,多种样式分页

    首先,让我们深入理解PHP文章内容分页的概念。在PHP中,分页通常是通过计算总页数、每页显示的内容数量以及当前页数来实现的。传统的自动分页方法基于字数,可能会导致文章段落被分割或者图片显示不完整,这显然对...

    文章正文分页实现源码

    4. **数据库查询分页**:如果文章存储在数据库中,可以利用SQL的LIMIT和OFFSET关键字进行数据分页。这种方法适用于动态加载更多内容的场景,比如无限滚动页面。 5. **内容管理系统(CMS)插件**:许多流行的CMS系统...

    PHP实现长文章分页实例代码(附源码)

    通过本文结合实例采用php动态将长文章内容进行分页处理。 查看效果演示 源码下载 如何分页 手动分页:一般在编辑内容时加入特殊分页标记,如{pages},提交后,PHP程序会根据分页符处理分页,生成不同的静态页面。...

    PHP的分页源代码 分页代码

    接下来我们对给定的PHP分页代码进行详细分析: 1. **引入数据库连接文件**: ```php include("conn.php");//数据库连接 ``` 2. **定义每页显示的记录数**: ```php $page_size=10;//每页显示的记录数 ``` 3...

    php长文章智能分页完整版(伪原创seo可用)

    一个函数是处理这个标签,把文章分成1、2、3...页 可以跳过包含表格的文章,处理图片和链接等html元素不被分割。 转载请注明原作者: http://www.52link.net 叶藤 演示:http://www.52fengshou.cn

    一个用于分页php类库

    总的来说,这个PHP分页类库是PHP开发中的一个实用工具,它简化了数据库查询的分页处理,让开发者能够快速创建高质量的分页效果。通过理解和利用这样的类库,开发者可以更高效地管理大量数据的展示,提升用户在网站或...

    PHP的一个超强分页类

    本篇文章将深入探讨一个名为"page.class.php"的PHP分页类,以及如何使用它来实现高效的分页功能。 首先,我们要理解分页的基本原理。在网页上,如果一次性加载所有数据,不仅会消耗大量服务器资源,而且可能导致...

    PHP文章内容分页类 好用 简单实用

    这个“PHP文章内容分页类”就是为了满足这一需求而设计的。它具有简单易用的特点,只需要包含并调用相应的标签就能实现功能,使得开发者能快速集成到自己的项目中。 首先,我们来详细了解一下这个分页类的工作原理...

    jQuery+PHP实现FCKEditor内容分页

    标题“jQuery+PHP实现FCKEditor内容分页”涉及到的是在网页内容编辑中,如何利用jQuery、PHP以及FCKEditor工具来实现文章或文本的分页功能。FCKEditor是一款强大的富文本编辑器,常用于网站后台内容管理,允许用户在...

    ecshop后台分页示例代码

    综上所述,"ecshop后台分页示例代码"提供了ECShop后台实现文章列表分页的一个实例,涵盖了PHP处理分页逻辑、Smarty模板展示分页界面以及数据库操作等方面的知识。通过学习这个示例,开发者可以更好地理解和运用...

    PHP图片分页管理

    1. 使用缓存:对频繁访问的图片分页结果进行缓存,减少数据库查询次数,提高响应速度。 2. 图片懒加载:仅加载当前可视区域内的图片,当用户滚动页面时再加载其他图片,降低初次加载时的页面负担。 3. 使用CDN:对于...

    php经典多样式分页类,附带Ajax分页

    本篇文章将深入探讨“php经典多样式分页类”以及如何结合Ajax实现动态分页。 首先,PHP分页类是将数据库查询结果按照一定数量的数据条目进行切片,形成多页显示的工具。它通常包含以下核心功能: 1. 计算总页数:...

    比较全面的php分页导航类

    `page_post.php`可能涉及到POST请求处理,与用户交互有关,比如提交页码进行分页操作;`in.php`可能是一个输入处理脚本,负责接收用户请求并调用分页类;而`Style`可能是一个CSS文件,用于定义分页导航的样式。 在...

    php如何分页为什么需要分页类来处理分页

    本篇文章将详细探讨“PHP如何进行分页”以及“为什么需要使用分页类来处理分页”。 首先,让我们看看在不使用分页类的情况下,如何实现简单的分页。基本思路是通过SQL查询限制返回的数据量,结合前端页面的页码控制...

    php智能分页类让你能快速的去设置页面的分页

    本篇文章将详细讲解基于提供的"php智能分页类"实现这一功能的知识点。 首先,标题提到的“php智能分页类”是一个预封装的PHP类,它的设计目的是简化分页的实现过程,避免开发者手动编写复杂的SQL查询和HTML代码。...

    PHP分页类方便使用简单易读

    本篇文章将详细介绍一个名为"pages.php"的PHP分页类,它以其简单易用的特点,为开发者提供了一个快速实现分页功能的解决方案。 首先,我们来理解一下"pages.php"分页类的基本结构。此类通常会包含以下几个核心部分...

Global site tag (gtag.js) - Google Analytics