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


Posted in PHP onApril 24, 2014
/**
     * 过滤外站链接 
     * @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); 
    }
PHP 相关文章推荐
PHP模板引擎SMARTY
Oct 09 PHP
php多层数组与对象的转换实例代码
Aug 05 PHP
php数组合并array_merge()函数使用注意事项
Jun 19 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
Jul 22 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
Aug 23 PHP
php使用pdo连接mssql server数据库实例
Dec 25 PHP
PHP中Closure类的使用方法及详解
Oct 09 PHP
Yii使用smsto短信接口的函数demo示例
Jul 13 PHP
Zend Framework框架中实现Ajax的方法示例
Jun 27 PHP
php实现微信公众平台发红包功能
Jun 14 PHP
PHP 实现重载
Mar 09 PHP
利用ajax+php实现商品价格计算
Mar 31 PHP
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
Apr 24 #PHP
smarty模板中使用get、post、request、cookies、session变量的方法
Apr 24 #PHP
php冒泡排序、快速排序、快速查找、二维数组去重实例分享
Apr 24 #PHP
php获取中文拼音首字母类和函数分享
Apr 24 #PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
Apr 24 #PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
Apr 24 #PHP
php计算当前程序执行时间示例
Apr 24 #PHP
You might like
php多层数组与对象的转换实例代码
2013/08/05 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
PHP下载文件函数与用法示例
2019/09/27 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
基础的prototype.js常用函数及其用法
2007/03/10 Javascript
window.open被浏览器拦截后的自定义提示效果代码
2007/11/19 Javascript
Jquery通过Ajax访问XML数据的小例子
2013/11/18 Javascript
JavaScript中获取样式的原生方法小结
2014/10/08 Javascript
JavaScript将字符串转换为整数的方法
2015/04/14 Javascript
原生JavaScript实现Ajax的方法
2016/04/07 Javascript
JavaScript实现邮箱地址自动匹配功能代码
2016/11/28 Javascript
jQuery实现验证码功能
2017/03/17 Javascript
Angular2使用Guard和Resolve进行验证和权限控制
2017/04/24 Javascript
JavaScript实现的冒泡排序法及统计相邻数交换次数示例
2017/04/26 Javascript
vue 优化CDN加速的方法示例
2018/09/19 Javascript
浅谈vuex actions和mutation的异曲同工
2018/12/13 Javascript
JavaScript观察者模式原理与用法实例详解
2020/03/10 Javascript
微信小程序实现多图上传
2020/06/19 Javascript
vue打开新窗口并实现传参的图文实例
2021/03/04 Vue.js
[01:30]DOTA2上海特锦赛现场采访 Loda倾情献唱
2016/03/25 DOTA
Python实现多线程下载文件的代码实例
2014/06/01 Python
详解Python中dict与set的使用
2015/08/10 Python
详解python的数字类型变量与其方法
2016/11/20 Python
Python使用字典的嵌套功能详解
2019/02/27 Python
wxPython实现文本框基础组件
2019/11/18 Python
python Shapely使用指南详解
2020/02/18 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
2020/06/02 Python
Django crontab定时任务模块操作方法解析
2020/09/10 Python
世界上第一个创建了罩杯系统的美国内衣品牌:Maidenform
2019/03/23 全球购物
护士的岗位职责
2013/12/04 职场文书
办公室主任主任岗位责任制
2014/02/11 职场文书
计算机科学系职业生涯规划书
2014/03/08 职场文书
个性与发展自我评价
2015/03/06 职场文书
工商局调档介绍信
2015/10/22 职场文书
详解Python类和对象内容
2021/06/22 Python
php实例化对象的实例方法
2021/11/17 PHP