方法一:
1
2
3
4
|
function get_all_url( $code ){ preg_match_all( '/<as+href=["|' ]?([^>" ' ]+)["|' ]?s*[^>]*>([^>]+)</a>/i', $code , $arr ); return array ( 'name' => $arr [2], 'url' => $arr [1]); } |
方法二:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
/** * date 2015-07-24 **/ $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 ); |
以上所述就是本文的全部內容了,希望大家能夠喜歡。