首页 > 资讯列表 > 编程/数据库 >> PHP

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

PHP 2014-12-14 19:06:18 转载来源: 网络整理/侵权必删

本文是一个php实现删除html标签得到纯文本可处理嵌套的标签的示例,感兴趣的同学参考下。 方法基本上来自THinkphp中的源码,但是被我修改了一下 <?php /* *@Description:删除HTML标签,得到纯文本

本文是一个php实现删除html标签得到文本可处理嵌套的标签的示例,感兴趣的同学参考下。


方法基本上来自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 实现 删除 html 得到 文本 可处理 嵌套


声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持