程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 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.hzhuti.com';  //要換成的新網址
$preg = '/[s]href=("|')[S]*("|')/i';
$replace = ' href="' . $url . '"';
$content = preg_replace($preg, $replace, $content);  //正則替換
create_log('newhtml', $content);  //生成新文件
?>

都是可以的

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved