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实现ODBC数据分页显示一例
Oct 09 PHP
PHP syntax error, unexpected $end 错误的一种原因及解决
Oct 25 PHP
php 生成文字png图片的代码
Apr 17 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
Jun 12 PHP
laravel安装和配置教程
Oct 29 PHP
利用PHP函数计算中英文字符串长度的方法
Nov 11 PHP
PHP工程师VIM配置分享
Dec 15 PHP
Zend Framework动作助手FlashMessenger用法详解
Mar 05 PHP
PHP性能优化大全(php.ini)
May 20 PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 PHP
thinkPHP中钩子的使用方法实例分析
Nov 16 PHP
php 实现银联商务H5支付的示例代码
Oct 12 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 array_multisort()函数的使用札记
2011/07/03 PHP
php+js实现异步图片上传实例分享
2014/06/02 PHP
ThinkPHP缓存方法S()概述
2014/06/13 PHP
分享五个PHP7性能优化提升技巧
2015/12/07 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
2016/06/13 PHP
CI框架实现框架前后端分离的方法详解
2016/12/30 PHP
php实现的中文分词类完整实例
2017/02/06 PHP
从JavaScript的函数重名看其初始化方式
2007/03/08 Javascript
jquery $.each() 使用小探
2013/08/23 Javascript
js和php如何获取当前url的内容
2013/09/22 Javascript
在jquery中combobox多选的不兼容问题总结
2013/12/24 Javascript
javascript中Date()函数在各浏览器中的显示效果
2015/06/18 Javascript
第一次接触神奇的Bootstrap导航条
2016/08/09 Javascript
Jquery Easyui日历组件Calender使用详解(23)
2016/12/18 Javascript
JavaScript设计模式之建造者模式实例教程
2018/07/02 Javascript
JavaScript设计模式之原型模式分析【ES5与ES6】
2018/07/26 Javascript
JS前端知识点总结之内置对象,日期对象和定时器相关操作
2019/07/05 Javascript
解决vue中使用proxy配置不同端口和ip接口问题
2019/08/14 Javascript
[01:03]悬念揭晓 11月26日DOTA2完美盛典不见不散
2017/11/23 DOTA
[01:00:17]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第二场 1月25日
2021/03/11 DOTA
python文件特定行插入和替换实例详解
2017/07/12 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
美国市场上最实惠的送餐服务:Dinnerly
2018/03/18 全球购物
英国工作场所设备购买网站:Slingsby
2019/05/03 全球购物
英国网上电器商店:Electricshop
2020/03/15 全球购物
医学专业毕业生个人的求职信
2013/12/04 职场文书
经典优秀毕业生求职信范文分享
2013/12/18 职场文书
乡镇庆八一活动方案
2014/02/02 职场文书
致1500米运动员广播稿
2014/02/07 职场文书
表彰会主持词
2014/03/26 职场文书
党员干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
2019年教师节活动策划方案
2019/09/09 职场文书
Django drf请求模块源码解析
2021/06/08 Python
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python
Mysql多层子查询示例代码(收藏夹案例)
2022/03/31 MySQL
uniapp引入支付宝原生扫码插件步骤详解
2022/07/23 Javascript