php专区

 首页 > php专区 > PHP应用 > php函数大全 > PHP移除指定HTML标签方法总结 - php函数

PHP移除指定HTML标签方法总结 - php函数

分享到:
【字体:
导读:
          在php中我们最常用的指定HTML标签可以直接使用strip_tags函数来替换了,利用它可以过滤所有的html标签哦,下面我来给大家介绍除了此函数之外...

PHP移除指定HTML标签方法总结

在php中我们最常用的指定HTML标签可以直接使用strip_tags函数来替换了,利用它可以过滤所有的html标签哦,下面我来给大家介绍除了此函数之外的其它办法。

有时候我们需要把html标签页存到数据库里,但是有些场合却需要拿无html标签的纯数据,这个时候就要对带html标签的数据进行处理,把html标签都去掉,平时用 htmlspecialchars() 来过滤html,但是把html的字符转义了,最后显示出来的就是html源代码,利用strip_tags()就可以把html标签去除掉.

PHP默认的函数有移除指定html标签,名称为strip_tags,在某些场合非常有用。

strip_tags

strip_tags — Strip HTML and PHP tags from a string

string strip_tags ( string str [, string allowable_tags] )

弊端:这个函数只能保留想要的html标签,就是参数string allowable_tags,这个函数的参数allowable_tags的其他的用法,代码如下:

strip_tags($source,”); 去掉所以的html标签。

strip_tags($source,‘

’); 保留字符串中的div、img、em标签。

如果想去掉的html的指定标签,那么这个函数就不能满足需求了,于是乎我用到了这个函数,代码如下:

  1. function strip_only_tags($str$tags$stripContent = FALSE) { 
  2.   $content = ''
  3.  
  4.   if (!is_array($tags)) { 
  5.     $tags = (strpos($str'>') !== false ? explode('>'str_replace('<'''$tags)) : array($tags)); 
  6.     if (end($tags) == '') { 
  7.       array_pop($tags); 
  8.     } 
  9.   } 
  10.  
  11.   foreach($tags as $tag) { 
  12.     if ($stripContent) { 
  13.       $content = '(.+|s[^>]*>)|)'
  14.     } 
  15.  
  16.     $str = preg_replace('#|s[^>]*>)'.$content.'#is'''$str); 
  17.   } 
  18.  
  19.   return $str

参数说明

$str — 是指需要过滤的一段字符串,比如div、p、em、img等html标签。

$tags — 是指想要移除指定的html标签,比如a、img、p等。

$stripContent = FALSE — 移除标签内的内容,比如将整个链接删除等,默认为False,即不删除标签内的内容。

使用说明,代码如下:

  1. $target = strip_only_tags($sourcearray(‘a’,'em’,'b’));移除$source字符串内的a、em、b标签。 
  2. $source='
    "" target="_blank">"logo.png" border="0" alt="Welcome to linzl." />This a example fromlixiphp!
     
  3.  '; 
  4. $target = strip_only_tags($sourcearray('a','em')); 
  5.  
  6. //target results 
  7. //
    This a example from!
     

其它办法,代码如下:

  1. //取出br标记 
  2. function strip($str
  3. $str=str_replace("
    "
    ,"",$str); 
  4. //$str=htmlspecialchars($str); 
  5. return strip_tags($str); 
  6. ?> 

一个自定义的函数,代码如下:

  1. ** 
  2.  * 取出html标签 
  3.  *  
  4.  * @access public 
  5.  * @param string str 
  6.  * @return string 
  7.  *  
  8.  */ 
  9. function deletehtml($str) { 
  10.     $str = trim($str); //清除字符串两边的空格 
  11.     $str = strip_tags($str,"

    "); //利用php自带的函数清除html格式。保留P标签 

  12.     $str = preg_replace("/t/","",$str); //使用正则表达式匹配需要替换的内容,如:空格,换行,并将替换为空。 
  13.     $str = preg_replace("/rn/","",$str);  
  14.     $str = preg_replace("/r/","",$str);  
  15.     $str = preg_replace("/n/","",$str);  
  16.     $str = preg_replace("/ /","",$str); 
  17.     $str = preg_replace("/  /","",$str);  //匹配html中的空格 
  18.     return trim($str); //返回字符串 
  19. }
分享到:
php根据生日计算年龄/生肖/星座实例 - ph...
php根据生日计算年龄/生肖/星座实例 本文章来介绍根据用户出生年月来计算年龄/生肖/星座的各种程序实例代码,各位朋友不防进入参考. 计算年龄,代码如下: function birthday($mydate){       $birth=$mydate;       list($by,$bm,$bd)=explode(&#039;-&#039;,$birth);...
PHP转换文件夹下所有文件的编码 - php函...
PHP转换文件夹下所有文件的编码 本文章来给大家介绍一个利用PHP转换文件夹下所有文件的编码,这种我们很适用一次批量转换多个文件的编辑哦,注意只转一次哦.实例代码如下:
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……