php 正则字符串中外部链接代码函数
- function deleteemptyarray( $val )
- {
- $links ='';
- if( is_array( $val ) )
- {
- foreach( $val as $v =>$_v)
- {
- if( !emptyempty( $_v[0] ) )
- {
- $links .=$_v[0].'|';
- }
- }
- return substr($links,0,-1);
- }
- else
- {
- return false;
- }
- }
- function getoutlink($body)
- {
- $tempcontent = $body;
- preg_match_all("/<a(.*?)href=(.*?)</a>/i",$tempcontent,$tempurl);
- $urls =array();
- foreach($tempurl[0] as $value)
- {
- if(strstr($value,'http') )
- {
- if(stristr($value ,$localurl))
- {
- continue;
- }
- else
- {
- preg_match_all("/hrefs*=s*(['"]?)(.*?)\1/is", $value, $vlink);
- $urls[] = $vlink[2];
- }
- }
- }
- //print_r($urls);phpfensi.com
- $strurl = explode('|',deleteemptyarray( $urls));
- $tempcount = array_unique($strurl);
- echo ' 外链'.count($tempcount)-1;
- }
调用方法,代码如下:
- $body ="<a href=/ab.htm>aaa</a><a href=http://www.phpfensi.com>我是外部连接</a>";
- echo getoutlink($body);