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

前端技术 2023/09/02 PHP

复制代码 代码如下:

/**

     * 过滤外站链接
     * @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 .=\')[^\\\'^\\\"]*[\\\'\\\"][^>]*>(.+?)<\\/a>/is\';  
        return preg_replace($pattern,\'$1\',$message);
    }

本文地址:https://www.stayed.cn/item/4936

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。