天天看點

php屏蔽外鍊,php去除外鍊的方法

php屏蔽外鍊,php去除外鍊的方法

php去除外鍊的方法:首先打開相應的PHP檔案;然後通過定義的“Replace_Links”方法處理下文章内容;最後完成文章外部連結的自動删除即可。

php屏蔽外鍊,php去除外鍊的方法

推薦:《PHP視訊教程》

一般在做網站系統的時候,出于優化等因素的考慮需要再添加文章的時候删除掉不是本站的連結,對于這一要求可以通過讓PHP處理下文章内容,來達到文章外部連結的自動删除的效果。

本執行個體代碼主要參考織夢CMS内容管理系統的外鍊删除方法。

代碼如下:

function Replace_Links( &$body, $allow_urls=array() )

{

$host_rule = join('|', $allow_urls);

$host_rule = preg_replace("#[\n\r]#", '', $host_rule);

$host_rule = str_replace('.', "\\.", $host_rule);

$host_rule = str_replace('/', "\\/", $host_rule);

$arr = '';

preg_match_all("#]*)>(.*)#iU", $body, $arr);

if( is_array($arr[0]) )

{

$rparr = array();

$tgarr = array();

foreach($arr[0] as $i=>$v)

{

if( $host_rule != '' && preg_match('#'.$host_rule.'#i', $arr[1][$i]) )

{

continue;

} else {

$rparr[] = $v;

$tgarr[] = $arr[2][$i];

}

}

if( !empty($rparr) )

{

$body = str_replace($rparr, $tgarr, $body);

}

}

$arr = $rparr = $tgarr = '';

return $body;

}