下面提供二款關於php正則鏈接方法,他們可以-取得內容所有鏈接並且保存到一個數組,當然也可以把鏈接全部替換哦。
下面提供二款關於php教程正則鏈接方法,他們可以-取得內容所有鏈接並且保存到一個數組,當然也可以把鏈接全部替換哦。
方法一
function get_all_url($code){
preg_match_all('/"' ]+)["|']?s*[^>]*>([^>]+)/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" );//打開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
if(!eregi("://",$regarr[$i][1]))//是否是相對路徑,即是否還有://
if(substr($regarr[$i][1],0,1)=="/")//是否是站點的根目錄
echo "link".($i+1).":".$site.$regarr[$i][1]."
";//根目錄else
echo "link".($i+1).":".$base.$regarr[$i][1]."
";//當前目錄else
echo "link".($i+1).":".$regarr[$i][1]."
";//相對路徑}
fclose($fp);