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

利用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

 

转载于:https://www.cnblogs.com/chenmj/archive/2010/05/09/1731114.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值