ホームページ  >  記事  >  バックエンド開発  >  php过滤html中的其他网站链接的方法(域名白名单功能)_PHP

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

WBOY
WBOYオリジナル
2016-06-01 11:54:55822ブラウズ

复制代码 代码如下:
/**

     * 过滤外站链接
     * @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);
    }

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。