php对长文章进行分页处理
设计的初衷是:文章列表页,如果用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; }

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

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

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

登录 CakePHP 是一项非常简单的任务。您只需使用一项功能即可。您可以记录任何后台进程(如 cronjob)的错误、异常、用户活动、用户采取的操作。在 CakePHP 中记录数据很容易。提供了 log() 函数

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

CakePHP 是一个开源MVC 框架。它使开发、部署和维护应用程序变得更加容易。 CakePHP 有许多库可以减少大多数常见任务的过载。
