现在的位置: 首页 > 综合 > 正文

php将HTML转换为txt文本的函数

2012年12月27日 ⁄ 综合 ⁄ 共 1263字 ⁄ 字号 评论关闭

利用php的preg_replace函数对html中的标记进行替换。

1 function html2text($str){
2  $str = preg_replace("/<style .*?<\/style>/is", "", $str); $str = preg_replace("/<script .*?<\/script>/is", "", $str);
3 $str = preg_replace("/<br \s*\/?\/>/i", "\n", $str);
4 $str = preg_replace("/<\/?p>/i", "\n\n", $str);
5 $str = preg_replace("/<\/?td>/i", "\n", $str);
6 $str = preg_replace("/<\/?div>/i", "\n", $str);
7 $str = preg_replace("/<\/?blockquote>/i", "\n", $str);
8 $str = preg_replace("/<\/?li>/i", "\n", $str);
9 $str = preg_replace("/\&nbsp\;/i", " ", $str);
10 $str = preg_replace("/\&nbsp/i", " ", $str);
11 $str = preg_replace("/\&amp\;/i", "&", $str);
12 $str = preg_replace("/\&amp/i", "&", $str);
13 $str = preg_replace("/\&lt\;/i", "<", $str);
14 $str = preg_replace("/\&lt/i", "<", $str);
15 $str = preg_replace("/\&ldquo\;/i", '"', $str);
16 $str = preg_replace("/\&ldquo/i", '"', $str);
17 $str = preg_replace("/\&lsquo\;/i", "'", $str);
18 $str = preg_replace("/\&lsquo/i", "'", $str);
19 $str = preg_replace("/\&rsquo\;/i", "'", $str);
20 $str = preg_replace("/\&rsquo/i", "'", $str);
21 $str = preg_replace("/\&gt\;/i", ">", $str);
22 $str = preg_replace("/\&gt/i", ">", $str);
23 $str = preg_replace("/\&rdquo\;/i", '"', $str);
24 $str = preg_replace("/\&rdquo/i", '"', $str);
25 $str = strip_tags($str);
26 $str = html_entity_decode($str, ENT_QUOTES, $encode);
27 $str = preg_replace("/\&\#.*?\;/i", "", $str);
28
29 return $str;
30 }
31

 

抱歉!评论已关闭.