程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP讀取某站點的鏈接的函數的方法

PHP讀取某站點的鏈接的函數的方法

編輯:關於PHP編程


  原理:讀取某站點的源文件,再利用正則分析其源代碼,得到所有鏈接
  <?
  /**********qiushuiwuhen(2002-5-20)***********/
  if(empty($url))$url = "http://www.csdn.net/expert/";//設置url
  $site=substr($url,0,strpos($url,"/",8));//站點
  $base=substr($url,0,strrpos($url,"/")+1);//文件所在目錄
  
  $fp = fopen($url, "r" );//打開url
  while(!feof($fp))$contents.=fread($fp,1024);//
  
  $pattern="|href=["]?([^ "]+)[" ]|U";
  preg_match_all($pattern,$contents, $regArr, PREG_SET_ORDER);//匹配所有href=
  for($i=0;$i<count($regArr);$i++){//遍歷所有匹配
  if(!eregi("://",$regArr[$i][1]))//是否是相對路徑,即是否還有://
  if(substr($regArr[$i][1],0,1)=="/")//是否是站點的根目錄
  echo "link".($i+1).":".$site.$regArr[$i][1]."<br/>";//根目錄
  else
  echo "link".($i+1).":".$base.$regArr[$i][1]."<br/>";//當前目錄
  else
  echo "link".($i+1).":".$regArr[$i][1]."<br/>";//相對路徑
  }
  fclose($fp);
  ?>

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