Heim  >  Artikel  >  Backend-Entwicklung  >  php过滤html中的其他网站链接的方法(域名白名单功能)_php实例

php过滤html中的其他网站链接的方法(域名白名单功能)_php实例

WBOY
WBOYOriginal
2016-06-07 17:20:26846Durchsuche

复制代码 代码如下:

/**

     * 过滤外站链接
     * @param array $local_domain  本站域名 数组
     * @param string $message    文本内容
     */
    function replace_outer_links($local_domain_arr, $message) {

        $pattern= '/]*href=[\'\"]http[s]?:\/\/(?!' ;
        $i = 0 ;
        foreach ($local_domain_arr as $local_domain){
            if($i==0){
                 $pattern .= 'www.' .$local_domain.'|'.$local_domain.'|[\w\_]+\.'.$local_domain ;
            }else{
                 $pattern .= '|www.' .$local_domain.'|'.$local_domain.'|[\w\_]+\.'.$local_domain ;
            }
             $i++ ;
        }
        $pattern .=')[^\'^\"]*[\'\"][^>]*>(.+?)/is';  
        return preg_replace($pattern,'$1',$message);
    }

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn