删除html标签得到纯文本可处理嵌套的标签


Posted in PHP onApril 28, 2014

方法基本上来自THinkphp中的源码,但是被我修改了一下

<?php 
/* 
*@Description:删除HTML标签,得到纯文本。可以处理嵌套的标签 
* 
*/ 
class deleteHtmlTags{ private $filename; 
function __construct($filename='C:/AppServ/www/text.txt'){ 
$this->filename = $filename; 
} 
/** 
* 删除html标签,得到纯文本。可以处理嵌套的标签,局限性在于连标签内的属性值都会删除掉 
* @access public 
* @param string $string 要处理的html 
* @return string 
*/ 
public function deletehtmltags(){ 
$content = $this->contentGet(); 
while(strstr($content, '>')){ 
$currentBegin = strpos($content, '<'); 
$currentEnd = strpos($content, '>'); 
$cha = $currentEnd - $currentBegin - 1; 
$tmpStringBegin = @substr($content, 0, $currentBegin); 
// $tmpStringMiddle = @ substr($content, $currentBegin + 1, $cha); 
$tmpStringEnd = @substr($content, $currentEnd + 1, strlen($content)); 
// $content = $tmpStringBegin.$tmpStringMiddle.$tmpStringEnd; 
$content = $tmpStringBegin.$tmpStringEnd; 
} 
return $content; 
} 
private function contentGet(){ 
$fd = fopen($this->filename, 'r'); 
$content = fread($fd, filesize($this->filename)); 
fclose($fd); 
return $content; 
} 
} 
$deleteHtml = new deleteHtmlTags(); 
$content = $deleteHtml->deletehtmltags(); 
echo $content; 
?>

修改部分也在上面,只是注释掉了。个人觉得这个方法比用正则这类的方法更好。
PHP 相关文章推荐
php 中include()与require()的对比
Oct 09 PHP
PHP获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
Oct 11 PHP
解析php安全性问题中的:Null 字符问题
Jun 21 PHP
php求两个目录的相对路径示例(php获取相对路径)
Mar 27 PHP
php强制文件下载而非在浏览器打开的自定义函数分享
May 08 PHP
php遍历类中包含的所有元素的方法
May 12 PHP
Smarty模板常见的简单应用分析
Nov 15 PHP
PHP CURL与java http使用方法详解
Jan 26 PHP
PHP排序算法之堆排序(Heap Sort)实例详解
Apr 21 PHP
PHP从零开始打造自己的MVC框架之入口文件实现方法详解
Jun 03 PHP
Yii 使用intervention/image拓展实现图像处理功能
Jun 22 PHP
PHP中echo与print区别点整理
Mar 09 PHP
php通过ajax实现双击table修改内容
Apr 28 #PHP
php利用curl抓取新浪微博内容示例
Apr 27 #PHP
php判断页面是否是微信打开的示例(微信打开网页)
Apr 25 #PHP
php检测文件编码的方法示例
Apr 25 #PHP
php中mysql连接和基本操作代码(快速测试使用,简单方便)
Apr 25 #PHP
windows服务器中检测PHP SSL是否开启以及开启SSL的方法
Apr 25 #PHP
php除数取整示例
Apr 24 #PHP
You might like
探讨Hessian在PHP中的使用分析
2013/06/13 PHP
php var_export与var_dump 输出的不同
2013/08/09 PHP
PHP实现AES256加密算法实例
2014/09/22 PHP
用于table内容排序
2006/07/21 Javascript
使用JavaScript构建JSON格式字符串实现步骤
2013/03/22 Javascript
js 剪切板应用clipboardData详细解析
2013/12/17 Javascript
js实现Select列表各项上移和下移的方法
2015/08/14 Javascript
Angularjs通过指令监听ng-repeat渲染完成后执行脚本的方法
2016/12/31 Javascript
vue中遇到的坑之变化检测问题(数组相关)
2017/10/13 Javascript
vue.js系列中的vue-fontawesome使用
2018/02/10 Javascript
jQuery实现获取当前鼠标位置并输出功能示例
2019/01/05 jQuery
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
微信小程序拖拽排序列表的示例代码
2020/07/08 Javascript
vue插件--仿微信小程序showModel实现模态提示窗功能
2020/08/19 Javascript
Linux环境下MySQL-python安装过程分享
2015/02/02 Python
python使用wmi模块获取windows下的系统信息 监控系统
2015/10/27 Python
python 性能提升的几种方法
2016/07/15 Python
Python 含参构造函数实例详解
2017/05/25 Python
Python设计模式之代理模式实例详解
2019/01/19 Python
Python使用matplotlib绘制三维参数曲线操作示例
2019/09/10 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
2020/12/14 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
美国受欢迎的眼影品牌:BH Cosmetics
2016/10/25 全球购物
香港卓悦化妆品官网:BONJOUR
2017/09/21 全球购物
匡威意大利官方商店 :Converse意大利
2018/11/27 全球购物
俄罗斯大型在线书店:Читай-город
2019/10/10 全球购物
测试驱动开发的主要步骤是什么
2014/12/10 面试题
数控加工专业毕业生自荐信
2013/09/27 职场文书
房屋转让协议书范本
2014/04/11 职场文书
新闻工作者先进事迹
2014/05/26 职场文书
个人合作协议范本
2015/08/06 职场文书
go goroutine 怎样进行错误处理
2021/07/16 Golang
TV动画「神渣☆爱豆」公开第一弹主视觉图
2022/03/21 日漫
JavaScript中的LHS和RHS分析详情
2022/04/06 Javascript
vue实力踩坑之push当前页无效
2022/04/10 Vue.js
JavaScript parseInt0.0000005打印5原理解析
2022/07/23 Javascript