Home  >  Article  >  Backend Development  >  PHP uses regular expressions to extract links in content

PHP uses regular expressions to extract links in content

墨辰丷
墨辰丷Original
2018-06-08 15:51:082385browse

This article mainly introduces the relevant information about PHP regular expressions to obtain all links of the content. Friends in need can refer to it.

Method one:

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

Method two:

/**
 * 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=[&#39;"]?([^ &#39;"]+)[&#39;" ]|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);

Summary: The above is the entire content of this article, I hope it can be helpful to everyone’s learning helped.

Related recommendations:

Five ways to generate random passwords in php

Basic knowledge and application of php design patterns

PHP jQuery MySql implementation of red and blue voting examples

The above is the detailed content of PHP uses regular expressions to extract links in content. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn