美文网首页
PHP HTML到纯文本转换分享

PHP HTML到纯文本转换分享

作者: 零一间 | 来源:发表于2017-10-31 09:16 被阅读52次

方式1(来自网络)

/**
 * html 转纯文本
 * @param $str
 * @return mixed
 */
function html2text($str) {
    $str = preg_replace("/<style .*?<\\/style>/is", "", $str);
    $str = preg_replace("/<script .*?<\\/script>/is", "", $str);
    $str = preg_replace("/<br \\s*\\/>/i", ">>>>", $str);
    $str = preg_replace("/<\\/?p>/i", ">>>>", $str);
    $str = preg_replace("/<\\/?td>/i", "", $str);
    $str = preg_replace("/<\\/?div>/i", ">>>>", $str);
    $str = preg_replace("/<\\/?blockquote>/i", "", $str);
    $str = preg_replace("/<\\/?li>/i", ">>>>", $str);
    $str = preg_replace("/ /i", " ", $str);
    $str = preg_replace("/ /i", " ", $str);
    $str = preg_replace("/&/i", "&", $str);
    $str = preg_replace("/&/i", "&", $str);
    $str = preg_replace("/</i", "<", $str);
    $str = preg_replace("/</i", "<", $str);
    $str = preg_replace("/“/i", '"', $str);
    $str = preg_replace("/&ldquo/i", '"', $str);
    $str = preg_replace("/‘/i", "'", $str);
    $str = preg_replace("/&lsquo/i", "'", $str);
    $str = preg_replace("/'/i", "'", $str);
    $str = preg_replace("/&rsquo/i", "'", $str);
    $str = preg_replace("/>/i", ">", $str);
    $str = preg_replace("/>/i", ">", $str);
    $str = preg_replace("/”/i", '"', $str);
    $str = preg_replace("/&rdquo/i", '"', $str);
    $str = strip_tags($str);
    $str = html_entity_decode($str, ENT_QUOTES, "utf-8");
    $str = preg_replace("/&#.*?;/i", "", $str);
    return $str;
}

输出结果:

$str='<li><a id="blog_nav_sitehome" class="menu" href="http://www.cnblogs.com/">博客园</a></li>';
echo html2text($str);

输出:

>>>>博客园>>>>

如果li标记不完整

$str='li><a id="blog_nav_sitehome" class="menu" href="http://www.cnblogs.com/">博客园</a></li';
echo html2text($str);

输出:

li>博客园

方式2,采用html2text类

链接地址:http://www.chuggnutt.com/html2text

怎么下载,见文章,这里就不描述了

require_once "./html2text.class.php";

$str='<li><a id="blog_nav_sitehome" class="menu" href="http://www.cnblogs.com/">博客园</a></li>';
$h2t =new html2text($str);
$text = $h2t->get_text();
echo $text;

输出:

* 博客园 [1] Links: ------ [1] http://www.cnblogs.com/

如果li标记不完整

$str='li><a id="blog_nav_sitehome" class="menu" href="http://www.cnblogs.com/">博客园</a></li';
$h2t =new html2text($str);
$text = $h2t->get_text();
echo $text;

输出:

li>博客园 [1] Links: ------ [1] http://www.cnblogs.com/

注:具体采用那个,个人自己衡量就行~

相关文章

  • PHP HTML到纯文本转换分享

    方式1(来自网络) 输出结果: 输出: 如果li标记不完整 输出: 方式2,采用html2text类 链接地址:h...

  • HTML字符串和iOS富文本转换

    服务端返回的不一定都是纯字符串,有可能是带有HTML标签的//html字符串转换为富文本 //富文本转换为html字符串

  • html标签

    文本 纯文本 .txt 和 .html一样是纯文本 html超文本标记语言 html是语义标签,是给文本添加上了语...

  • H5常用标签

    文本 纯文本 .txt 和 .html一样是纯文本 html超文本标记语言 html是语义标签,是给文本添加上了语...

  • VScode下MarkDown如何连接印象笔记

    MarkDown作为易读易写易更改纯文本,体现着极简主义,兼容HTML,可以转换为HTML格式发布,跨平台使用,越...

  • HTML

    HTML HTML(Hypertext Markup Language)超文本标记语言;纯文本:只能保存文本内容,...

  • PHP 基础知识总结

    PHP 代表 PHP: Hypertext Preprocessor PHP 文件可包含文本、HTML、JavaS...

  • django模板过滤器

    一、形式:小写: {{ name | lower }} 二、串联:先转义文本到HTML,再转换每行到 标签:...

  • markdown 使用介绍

    优点 纯文本,兼容性强,同时功能也较丰富。 更专注于文字内容而不是排版。 可以方便地转换格式到html、电子书等。...

  • 前端学习-HTML

    HTML是什么? HTML(Hypertext Markup Language)超文本标记语言。 纯文本只能保存文...

网友评论

      本文标题:PHP HTML到纯文本转换分享

      本文链接:https://www.haomeiwen.com/subject/kxbvpxtx.html