当前位置:首页 > PHP教程 > 正则表达式 > 列表

php 正则字符串中外部链接代码函数

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-09 15:25:18 浏览: 评论:0 
  1. function deleteemptyarray( $val ) 
  2.  $links =''
  3.  ifis_array$val ) ) 
  4.  { 
  5.   foreach$val as $v =>$_v
  6.   { 
  7.    if( !emptyempty$_v[0] ) ) 
  8.    { 
  9.     $links .=$_v[0].'|'
  10.    } 
  11.   }   
  12.   return substr($links,0,-1); 
  13.  } 
  14.  else 
  15.  { 
  16.   return false; 
  17.  } 
  18.  
  19. function getoutlink($body
  20.  
  21.  $tempcontent = $body
  22.  preg_match_all("/<a(.*?)href=(.*?)</a>/i",$tempcontent,$tempurl); 
  23.  $urls =array(); 
  24.  foreach($tempurl[0] as $value
  25.  { 
  26.   if(strstr($value,'http') ) 
  27.   { 
  28.    if(stristr($value ,$localurl)) 
  29.    { 
  30.     continue
  31.    } 
  32.    else 
  33.    {     
  34.     preg_match_all("/hrefs*=s*(['"]?)(.*?)\1/is", $value$vlink);     
  35.     $urls[] = $vlink[2]; 
  36.    } 
  37.   } 
  38.  } 
  39.  //print_r($urls);phpfensi.com
  40.  $strurl = explode('|',deleteemptyarray( $urls)); 
  41.  $tempcount = array_unique($strurl); 
  42.  echo '&nbsp;外链'.count($tempcount)-1; 

调用方法,代码如下:

  1. $body ="<a href=/ab.htm>aaa</a><a href=http://www.phpfensi.com>我是外部连接</a>"
  2. echo getoutlink($body);

Tags: php正则 字符串 函数

分享到: