欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

php过滤超链接并判断链接中文字是否为网址preg_replace_callback函数用法

程序员文章站 2022-03-28 14:31:08
...
示例代码如下:
$str = '<a class="style" href="http://www.xiaojudeng.com/" target="_blank">www.xiaojudeng.com</a> <a href="http://www.xiaojudeng.com">小桔灯分类信息网</a> 过滤超链接';
$str = filter_url($str);


处理代码如下:
function filter_url($str){
return preg_replace_callback("/<a[^>]+>(.+?)<\/a>/i","filter_url_callback",$str);
}

function filter_url_callback($matchs){
  $str = $matchs[1];
  if(!$str) return '';
  $arr = array('www.','http://','.com','.cn','.org','.net','.cc');
   
  foreach($arr AS $k=>$v){
  if(stripos($str,$v) !==false) return '';
  }

  return $str;

}


如果超链接的文字为 www.xiaojudeng.com 的网址,也会被过滤掉.但是如果是纯文字的话就保留.