PHP教程:php移除指定的标签和并删除内容实例

PHP教程:php移除指定的标签和并删除内容实例-第1张-菜鸟博客

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

PHP默认的函数有移除指定html标签,名称为strip_tags,在某些场合非常有用。但是还有一些场景,比如连带标签内内容一起过滤,而以上标签仅仅是过滤移除html标签,那么怎么办呢?

以下下是php移除指定的标签和并删除内容实例代码

/**

 * php移除指定的标签和并删除内容
 * @param array $tags 需要删除的标签数组
 * @param string $str 数据源
 * @param string $content 是否删除标签内的内容 0保留内容 1不保留内容
 * @return string
 */

function strip_html_tags($tags,$str,$content=0){
    if($content){
        $html=array();
        foreach ($tags as $tag) {
            $html[]='/(<'.$tag.'.*?>[\s|\S]*?<\/'.$tag.'>)/';
        }
        $data=preg_replace($html,'',$str);
    }else{
        $html=array();
        foreach ($tags as $tag) {
            $html[]="/(<(?:\/".$tag."|".$tag.")[^>]*>)/i";
        }
        $data=preg_replace($html, '', $str);
    }
    return $data;
}

猜你喜欢

PHP教程:循环每4个li包裹一个div

PHP教程:循环每4个li包裹一个div

有的时候我们需要做的是每4个循环在数据的输出周围包装一个div。正常foreach循环是这样的:<?php  foreach ($articles as ...

PHP教程:在foreach循环文章列表中插入随机广告位

PHP教程:在foreach循环文章列表中插入随机广告位

之前做了一个插件zblogphp插件:广告伪装成文章插件 ,但其实插件还是有些是实现不了的。那么怎么办呢?最好最快的方法,修改主题模板文件,在循环列表加入判断加入相关广告代码。那样效果是最好的。$i&...

发表评论