首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 正則提取網頁所有鏈接的兩種方法

     編輯:PHP 綜合知識

方法一:正則匹配 HTML 標簽

function get_all_url($code) {
    preg_match_all('/<a\s+href=["|\']?([^>"\' ]+)["|\']?\s*[^>]*>([^<]+)<\/a>/i', $code, $arr);
    return array('name'=>$arr[2], 'url'=>$arr[1]);
}

方法二:抓取遠程頁面解析鏈接

$site = substr($url, 0, strpos($url, "/", 8));
$base = substr($url, 0, strrpos($url, "/")+1);
$fp = fopen($url, "r");
while(!feof($fp)) $contents .= fread($fp, 1024);
$pattern = "|href=['\"]?([^ '\"]+)['\"]|u";
preg_match_all($pattern, $contents, $regarr, PREG_SET_ORDER);
for($i=0; $i

方法二自動處理相對/絕對路徑,補全域名或目錄前綴。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved