Heim  >  Artikel  >  php教程  >  php正则链接-取得内容所有链接

php正则链接-取得内容所有链接

WBOY
WBOYOriginal
2016-06-13 11:17:541279Durchsuche

下面提供二款关于php正则链接方法,他们可以-取得内容所有链接并且保存到一个数组,当然也可以把链接全部替换哦。  

下面提供二款关于php教程正则链接方法,他们可以-取得内容所有链接并且保存到一个数组,当然也可以把链接全部替换哦。

方法一

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


方法二

$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($regarr);$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);


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:php 过滤html标签的函数代码Nächster Artikel:php 过滤所有HTML标记