首页 > php开发 > PHP 批量删除网页内容中超级链接

PHP 批量删除网页内容中超级链接

在做内容站时,经常会用到采集软件在互联网上大肆侵略别站的资源,一采集就是几千篇的文章,采集之后,发现内容中有些原站点的超级链接,要是一个个去改的话,很麻烦,所以写了个方法,测试成功。

简单说一下原理,这里重利用的是 PHP 的替换函数 preg_replace,在实际应用中,我们经常使用 preg_replace 去替换一些危险字符或去转换一些斜杠或回车等.

preg_replace($1,$2,$3) 有三个重要的参数,其中 $1 是要搜索的字符串,$2 是要替换成的字符串,$3 是要进行替换的字符串。

那么知道了 preg_replace 函数工作的原理,那么进行替换超链接就不难了,我们只需要将参数 $1 和 $2 转换成数组,进行批量替换,以下是方法,测试成功,共享给 phper,代码如下:

<?php
$str = "<a href=\"xxx\">超级链接</a>|<a href=\"xxx\">这是个链接</a><br>";
function removelink($str) {
    $mode = array(
        "#<a href=\"(.*)\">#iUs",
        "#</a>#iUs"
    );
    $want = array(
        "",
        ""
    );
    $con = preg_replace($mode, $want, $str);
    return $con;
}
echo removelink($str);
?>

或如下代码:

<?php
$content = file_get_contents('test.html');
$url = 'http://www.phprm.com'; //要换成的新网址
$preg = '/[\s]href=(\"|\')[\S]*(\"|\')/i';
$replace = ' href="' . $url . '"';
$content = preg_replace($preg, $replace, $content); //正则替换
create_log('newhtml', $content); //生成新文件

?>

都是可以的.

教程链接:http://www.phprm.com/develop/fs1456.html

随意转载~但请保留教程地址★

标签:批量 删除 网页 超链接

相关文章

发表留言