您好,欢迎来到易妖游戏网。
搜索
您的当前位置:首页php去除外链的方法

php去除外链的方法

来源:易妖游戏网

php去除外链的方法:首先打开相应的PHP文件;然后通过定义的“Replace_Links”方法处理下文章内容;最后完成文章外部链接的自动删除即可。

推荐:《PHP视频教程》

一般在做网站系统的时候,出于优化等因素的考虑需要再添加文章的时候删除掉不是本站的链接,对于这一要求可以通过让PHP处理下文章内容,来达到文章外部链接的自动删除的效果。

本实例代码主要参考织梦CMS内容管理系统的外链删除方法。

代码如下:

/**
 * 删除非站内链接
 *
 * @access public
 * @param string $body 内容
 * @param array $allow_urls 允许的超链接
 * @return string
 */
function Replace_Links( &$body, $allow_urls=array() )
{
 $host_rule = join('|', $allow_urls);
 $host_rule = preg_replace("#[

]#", '', $host_rule);
 $host_rule = str_replace('.', ".", $host_rule);
 $host_rule = str_replace('/', "/", $host_rule);
 $arr = '';
 preg_match_all("#<a([^>]*)>(.*)</a>#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;
}

Copyright © 2019- vipyiyao.com 版权所有 湘ICP备2023022495号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务