麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > PHP > 正文

PHP將HTML轉(zhuǎn)換成文本一些方法總結(jié)

2024-09-04 11:48:04
字體:
供稿:網(wǎng)友

在php中html轉(zhuǎn)換成文本提供了自帶的函數(shù)strip_tags了,但有時(shí)此函數(shù)不夠用,下面總結(jié)了一些用戶自定的函數(shù),各位可參考.

最常用的使用php函數(shù)strip_tags,代碼如下:

  1. <?php 
  2. $mystr=<<<SATO 
  3. 此處省略幾十行HTML代碼^_^ 
  4. SATO; 
  5. $str=strip_tags($mystr); 
  6. //到這里就已經(jīng)達(dá)到我的HTML轉(zhuǎn)為TXT文本的目的了,哈哈,使用這個(gè)函數(shù)真方便 
  7. //下面是插件的一些切詞等操作,這里就不多說了 
  8. ?> 

自定義函數(shù),代碼如下:

  1. <?php 
  2. // $document 應(yīng)包含一個(gè) HTML 文檔。 
  3. // 本例將去掉 HTML 標(biāo)記,javascript 代碼 
  4. // 和空白字符。還會(huì)將一些通用的 
  5. // HTML 實(shí)體轉(zhuǎn)換成相應(yīng)的文本。 
  6. $search = array ("'<script[^>]*?>.*?</script>'si",  // 去掉 javascript 
  7.                  "'<[/!]*?[^<>]*?>'si",           // 去掉 HTML 標(biāo)記 
  8.                  "'([rn])[s]+'",                 // 去掉空白字符 
  9.                  "'&(quot|#34);'i",                 // 替換 HTML 實(shí)體 
  10.                  "'&(amp|#38);'i"
  11.                  "'&(lt|#60);'i"
  12.                  "'&(gt|#62);'i"
  13.                  "'&(nbsp|#160);'i"
  14.                  "'&(iexcl|#161);'i"
  15.                  "'&(cent|#162);'i"
  16.                  "'&(pound|#163);'i"
  17.                  "'&(copy|#169);'i"
  18.                  "'&#(d+);'e");                    // 作為 PHP 代碼運(yùn)行 
  19. $replace = array (""
  20.                   ""
  21.                   "/1"
  22.                   """, 
  23.                   "&"
  24.                   "<"
  25.                   ">"
  26.                   " "
  27.                   chr(161), 
  28.                   chr(162), 
  29.                   chr(163), 
  30.                   chr(169), 
  31.                   "chr(/1)"); 
  32. $text = preg_replace ($search$replace$document); 
  33. ?> 

后來我從網(wǎng)上看到了一個(gè)使用PHP寫的方法,使用這個(gè)方法也可以實(shí)現(xiàn)將HTML轉(zhuǎn)為TXT文本,個(gè)人覺得也還蠻實(shí)用的,在這里分享一下,代碼如下:

  1. function HtmlToText($str){ 
  2.   $str=preg_replace("/<sty(.*)/style>|<scr(.*)/script>|<!--(.*)-->/isU","",$str);//去除CSS樣式、JS腳本、HTML注釋 
  3.   $alltext="";//用于保存TXT文本的變量 
  4.   $start=1;//用于檢測(cè)<左、>右標(biāo)簽的控制開關(guān) 
  5.   for($i=0;$i<strlen($str);$i++){//遍歷經(jīng)過處理后的字符串中的每一個(gè)字符 
  6.     if(($start==0)&&($str[$i]==">")){//如果檢測(cè)到>右標(biāo)簽,則使用$start=1;開啟截取功能 
  7.       $start=1; 
  8.     }else if($start==1){//截取功能 
  9.       if($str[$i]=="<"){//如果字符是<左標(biāo)簽,則使用<font color='red'>|</font>替換 
  10.         $start=0; 
  11.         $alltext.="<font color='red'>|</font>"
  12.       }else if(ord($str[$i])>31){//如果字符是ASCII大于31的有效字符,則將字符添加到$alltext變量中 
  13.         $alltext.=$str[$i]; 
  14.       } 
  15.     } 
  16. //下方是去除空格和一些特殊字符的操作 
  17. $alltext = str_replace(" "," ",$alltext); 
  18. $alltext = preg_replace("/&([^;&]*)(;|&)/","",$alltext); 
  19. $alltext = preg_replace("/[ ]+/s"," ",$alltext); 
  20. return $alltext

使用下面這個(gè)方法也可以實(shí)現(xiàn)將簡答的HTML代碼轉(zhuǎn)換為TXT文本,實(shí)例代碼如下:

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

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 免费毛片视频 | 日韩在线欧美在线 | 精品一区二区在线观看视频 | 亚洲网站免费看 | 91婷婷射| 欧美亚洲一级 | 国产毛片毛片 | 久久久免费电影 | 久久久久久久国产视频 | 九九精品在线播放 | 精品一区二区三区免费毛片 | 欧美va亚洲| 午夜视频色 | 日韩理论电影网 | 九一国产精品 | 九一免费版在线观看 | 婷婷久久综合九色综合色多多蜜臀 | av在线1 | 国产精品午夜一区 | 欧美日韩亚洲国产精品 | 成人男男视频拍拍拍在线观看 | 国产一区二区视频观看 | 国产免费中文字幕 | 国产精品剧情一区二区在线观看 | 亚洲激情91| 亚洲经典视频 | 日本高清在线播放 | 免费国产一区二区视频 | 国产午夜精品一区二区三区不卡 | 国产一国产精品一级毛片 | 欧美亚洲国产一区二区三区 | 免费观看黄色一级视频 | 激情视频免费看 | 久久久成人一区二区免费影院 | 亚洲电影免费观看国语版 | 久久超 | a网站在线| 7777久久香蕉成人影院 | 久久精品久| 一级大黄毛片 | 欧美一级电影网 |