删除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 相关文章推荐
使用无限生命期Session的方法
Oct 09 PHP
在PHP中读取和写入WORD文档的代码
Apr 09 PHP
用php+javascript实现二级级联菜单的制作
May 06 PHP
php 论坛采集程序 模拟登陆,抓取页面 实现代码
Jul 09 PHP
PHP print类函数使用总结
Jun 25 PHP
CURL状态码列表(详细)
Jun 27 PHP
学习php中的正则表达式
Aug 17 PHP
php编写的一个E-mail验证类
Mar 25 PHP
非常实用的php验证码类
May 15 PHP
分析PHP中单双引号的误区和双引号小隐患
Jul 19 PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
Jan 15 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
Jun 14 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
THINKPHP内容分页代码分享
2015/01/14 PHP
php中二分法查找算法实例分析
2016/09/22 PHP
PHP实现随机发扑克牌
2020/04/22 PHP
一种JavaScript的设计模式
2006/11/22 Javascript
那些年,我还在学习jquery 学习笔记
2012/03/05 Javascript
从jquery的过滤器.filter()方法想到的
2013/09/29 Javascript
JavaScript的代码编写格式规范指南
2015/12/07 Javascript
JS实现数字格式千分位相互转换方法
2016/08/01 Javascript
AngularJS模仿Form表单提交的实现代码
2016/12/08 Javascript
微信端开发--登录小程序步骤
2017/01/11 Javascript
详解如何使用webpack+es6开发angular1.x
2017/08/16 Javascript
Vue keep-alive实践总结(推荐)
2017/08/31 Javascript
基于IView中on-change属性的使用详解
2018/03/15 Javascript
JavaScript轮播停留效果的实现思路
2018/05/24 Javascript
深入理解NodeJS 多进程和集群
2018/10/17 NodeJs
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
Vue开发之封装分页组件与使用示例
2019/04/25 Javascript
Vue.js构建你的第一个包并在NPM上发布的方法步骤
2019/05/01 Javascript
js实现动态时钟
2020/03/12 Javascript
详解Vue Cli浏览器兼容性实践
2020/06/08 Javascript
Vue组件为什么data必须是一个函数
2020/06/11 Javascript
vue 在methods中调用mounted的实现操作
2020/08/07 Javascript
动态实现element ui的el-table某列数据不同样式的示例
2021/01/22 Javascript
Python使用os模块和fileinput模块来操作文件目录
2016/01/19 Python
python+numpy实现的基本矩阵操作示例
2019/07/19 Python
解决django框架model中外键不落实到数据库问题
2020/05/20 Python
Python使用jupyter notebook查看ipynb文件过程解析
2020/06/02 Python
Servlet如何得到服务器的信息
2015/12/22 面试题
工厂门卫岗位职责
2013/11/25 职场文书
银行简历自我评价
2014/02/11 职场文书
我为自己代言广告词
2014/03/18 职场文书
应届毕业生自荐信
2014/05/28 职场文书
庆国庆国旗下讲话稿2014
2014/09/21 职场文书
学校后勤工作总结2015
2015/05/15 职场文书
旷工检讨书大全
2015/08/15 职场文书
详解Redis基本命令与使用场景
2021/06/01 Redis