首页  >  文章  >  后端开发  >  php如何清除style样式

php如何清除style样式

藏色散人
藏色散人原创
2020-08-15 10:13:284781浏览

php清除style的方法:1、使用“strip_tags”函数去掉HTML及PHP的标记;2、使用“htmlspecialchars”函数将特殊字元转成HTML格式;3、通过“ClearHtml”方法去除css style样式。

php如何清除style样式

推荐:《PHP视频教程

清除html格式,去除html、css、js格式

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=&#39;./../b&#39;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=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式  
   $content = preg_replace("/class=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式  
   $content = preg_replace("/id=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式     
   $content = preg_replace("/lang=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式      
   $content = preg_replace("/width=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式   
   $content = preg_replace("/height=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式   
   $content = preg_replace("/border=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式   
   $content = preg_replace("/face=.+?[&#39;|\"]/i",&#39;&#39;,$content);//去除样式   
   $content = preg_replace("/face=.+?[&#39;|\"]/",&#39;&#39;,$content);//去除样式只允许小写正则匹配没有带 i 参数
   return $content;
}

以上是php如何清除style样式的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn