• 技术文章 >php教程 >php手册

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

    2016-06-13 09:36:51原创441
    方法基本上来自THinkphp中的源码,但是被我修改了一下

    复制代码 代码如下:


    /*
    *@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;
    ?>


    修改部分也在上面,只是注释掉了。个人觉得这个方法比用正则这类的方法更好。
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:html标签 纯文本
    上一篇:PHP 数据库驱动、连接数据不同方式学习笔记 下一篇:程序员吃自助餐后的反思
    Web大前端开发直播班

    相关文章推荐

    • php实现高效获取图片尺寸的方法• php使用ffmpeg向视频中添加文字字幕的实现方法,• 大型网站带来的问题,大型网站带来问题• PHP实现搜索相似图片,• PHP中字符安全过滤函数使用总结

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网