php去除富文本编辑器中的内容格式

本文介绍了一种去除HTML标签并截取纯文本的方法,适用于文章列表页展示文章简介,保持列表页整洁。通过使用PHP函数如strip_tags()和mb_ereg_replace(),可以有效地从富文本中提取前几行纯文本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在新的项目中遇到需要在文章列表页显示文章内容的开头几行纯文字部分,因为后台是通过富文本编辑器添加的文章,直接返回的数据是带有格式的数据,造成列表页样式混乱,所以需要去除格式返回纯文本数据。

/**
 * 去除Html所有标签、空格以及空白,并截取字符串(包括中文)
 * @param  string $string 字符串
 * @param  number $sublength 字符串长度
 * @param  string $encoding 编码方式
 * @param  string $ellipsis 省略号  
 */
function cutstr_html($string,$sublength,$encoding = 'utf-8',$ellipsis = '…'){
$string = strip_tags($string);
 $string = trim($string);
 $string = mb_ereg_replace("\t","",$string);
 $string = mb_ereg_replace("\r\n","",$string);
 $string = mb_ereg_replace("\r","",$string);
 $string = mb_ereg_replace("\n","",$string);
 $string = mb_ereg_replace(" ","",$string);
 if(mb_strlen(trim($string),'utf-8') < $sublength){
         return trim($string).$ellipsis;
 }else{
         return mb_strcut(trim($string),0,$sublength,$encoding).$ellipsis;
 }
}
//测试字符串
$str='<p style="microsoft yahei, arial; vertical-align: baseline; list-style-type: none; text-indent: 28px; line-height: 25px; text-align:center;margin-top: 12px; margin-bottom: 12px; padding: 0px; border: 0px; font-size: 14px;color:red;">   fherfhewkolfjlkdsjfld</p>';
//调用方法测试
echo cutstr_html($string=$str,$sublength=5,$encoding='utf-8',$ellipsis='...');

这样输出的就是长度为5的纯文本字符串,就可以放在文章列表中显示了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值