首頁  >  文章  >  後端開發  >  php正则过滤超链接并判断链接文字是否为网址preg_replace_callback函数用法

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

WBOY
WBOY原創
2016-06-20 13:01:001095瀏覽

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

$str = '<a class="style" href="http://www.scutephp.com/" target="_blank">www.scutephp.com</a> <a href="http://www.scutephp.com">cxybl</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.scutephp.com 的网址,也会被过滤掉.但是如果是纯文字的话就保留.


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn