php 批量替换html标签的实例代码

yipeiwu_com6年前PHP代码库

1.把html元素全部去掉,或者保留某几个html标签

复制代码 代码如下:

<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
echo "/n";

// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>


结果为(去掉了注释):

<blockquote>Test paragraph. Other text
<p>Test paragraph.</p> <a href="#fragment">Other text</a></blockquote>2.相反,只去掉某一个html标签

复制代码 代码如下:

<?php
function strip_only($str, $tags, $stripContent = false) {
    $content = '';
    if(!is_array($tags)) {
        $tags = (strpos($str, '>') !== false ? explode('>', str_replace('<', '', $tags)) : array($tags));
        if(end($tags) == '') array_pop($tags);
    }
    foreach($tags as $tag) {
        if ($stripContent)
             $content = '(.+</'.$tag.'[^>]*>|)';
         $str = preg_replace('#</?'.$tag.'[^>]*>'.$content.'#is', '', $str);
    }
    return $str;
}

$str = '<font color="red">red</font> text';
$tags = 'font';
$a = strip_only($str, $tags); // red text
$b = strip_only($str, $tags, true); // text
?>

相关文章

PHP简单获取视频预览图的方法

本文实例讲述了PHP简单获取视频预览图的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:<?php convertToFlv( "some-video-...

ezSQL PHP数据库操作类库

ezSQL 下载地址: 下载 : ezSQL 新版本是2.05添加了很多支持,包括 CodeIgniter,MSSQL, PDO 等等 我之前也为 CodeIgniter 写过一次,不过...

PHP利用hash冲突漏洞进行DDoS攻击的方法分析

本文实例分析了PHP利用hash冲突漏洞进行DDoS攻击的方法。分享给大家供大家参考。具体分析如下: 首先声明:本文内容只用于研究学习使用,请勿用于非法行为! 前面提到过最近爆出的has...

PHP查询大量数据内存耗尽问题的解决方法

从数据库查询大量数据时会出现内容不够的提示: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 这个...

php结合md5实现的加密解密方法

本文实例讲述了php结合md5实现的加密解密方法。分享给大家供大家参考,具体如下: 最近在整理代码发现了一个不错的东西,结合md5的加解密算法。网上关于php结合md5的加密,解密算法比...