php中去除文字内容中所有html代码

3275 2013-8-2 16:17

strip_tags($str) 去掉 HTML 及 PHP 的标记

语法: string strip_tags(string str); 

传回值: 字串 

函式种类: 资料处理 

内容说明 :

解析:本函式可去掉字串中包含的任何 HTML 及 PHP 的标记字串。若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错误。而本函式和 fgetss() 有着相同的功能

 

PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了

经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。

 

PHP清除html、css、js格式并去除空格的PHP函数

 

function cutstr_html($string, $sublen)    
 {
  $string = strip_tags($string);
  $string = preg_replace ('/\n/is', '', $string);
  $string = preg_replace ('/ | /is', '', $string);
  $string = preg_replace ('/ /is', '', $string);
  
  preg_match_all("/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/", $string, $t_string);   
  if(count($t_string[0]) - 0 > $sublen) $string = join('', array_slice($t_string[0], 0, $sublen))."…";   
  else $string = join('', array_slice($t_string[0], 0, $sublen));
  
  return $string;
 }

解析:这个函数既有去除html标签、css样式、js、空格等格式的功能(格式化html文本)也有截取字符串的功能。


 

htmlspecialchars 将特殊字元转成 HTML 格式

语法: string htmlspecialchars(string string); 

传回值: 字串 

函式种类: 资料处理 

内容说明 

解析:本函式将特殊字元转成 HTML 的字串格式 ( &....; )。最常用到的场合可能就是处理客户留言的留言版了。 

& (和) 转成 & 

" (双引号) 转成 " 

< (小于) 转成 &lt; 

> (大于) 转成 &gt; 

此函式只转换上面的特殊字元,并不会全部转换成 HTML 所定的 ASCII 转换。 


使用范例 

<FORM ACTION='./../b'la>

<H2>Restaurant Description<H2>

Name of restaurant:

<INPUT TYPE=text NAME="restname" VALUE="<?echo HTMLSpecialChars($restname); ?>"> 

<!-- 变数 $restname 是酱子的 $restname="\"The White Horse\""; -->

<BR>

输入描述 (若您会 HTML,可直接使用): <BR>

<TEXTAREA NAME="descript"><?echo HTMLSpecialChars($descript);?></TEXTAREA> 

<INPUT TYPE=submit>

</FORM> 


htmlentities 将所有的字元都转成 HTML 字串 

语法: string htmlentities(string string); 

传回值: 字串 

函式种类: 资料处理 

内容说明 

解析:本函式有点像 htmlspecialchars() 函式,但本函式会将所有 string 的字元都转成 HTML 的特殊字集字串。不过在转换后阅读网页原始码的方面,会有很多困扰,尤其是网页原始码的中文字会变得不知所云,浏览器上看到的还是正常的。

php 去除html标签 js 和 css样式 - 最爱用的一个PHP清楚html格式函数

function ClearHtml($content) {  
   $content = preg_replace("/<a[^>]*>/i", "", $content);  
   $content = preg_replace("/<\/a>/i", "", $content);   
   $content = preg_replace("/<div[^>]*>/i", "", $content);  
   $content = preg_replace("/<\/div>/i", "", $content);      
   $content = preg_replace("/<!--[^>]*-->/i", "", $content);//注释内容
   $content = preg_replace("/style=.+?['|\"]/i",'',$content);//去除样式  
   $content = preg_replace("/class=.+?['|\"]/i",'',$content);//去除样式  
   $content = preg_replace("/id=.+?['|\"]/i",'',$content);//去除样式     
   $content = preg_replace("/lang=.+?['|\"]/i",'',$content);//去除样式      
   $content = preg_replace("/width=.+?['|\"]/i",'',$content);//去除样式   
   $content = preg_replace("/height=.+?['|\"]/i",'',$content);//去除样式   
   $content = preg_replace("/border=.+?['|\"]/i",'',$content);//去除样式   
   $content = preg_replace("/face=.+?['|\"]/i",'',$content);//去除样式   
   $content = preg_replace("/face=.+?['|\"]/",'',$content);//去除样式只允许小写正则匹配没有带 i 参数
   return $content;
}