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判断上传的Excel文件中是否有图片及PHPExcel库认识
Jan 11 PHP
简单的php数据库操作类代码(增,删,改,查)
Apr 08 PHP
解析PHP获取当前网址及域名的实现代码
Jun 23 PHP
php版淘宝网查询商品接口代码示例
Jun 17 PHP
PHP实现的汉字拼音转换和公历农历转换类及使用示例
Jul 01 PHP
ThinkPHP整合百度Ueditor图文教程
Oct 21 PHP
PHP获取音频文件的相关信息
Jun 22 PHP
详解js异步文件加载器
Jan 24 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
Jul 15 PHP
Thinkphp实现短信验证注册功能
Oct 18 PHP
PHP简单实现防止SQL注入的方法
Mar 13 PHP
Yii框架核心组件类实例详解
Aug 06 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数据缓存技术
2007/02/14 PHP
有关phpmailer的详细介绍及使用方法
2013/01/28 PHP
php 常用算法和时间复杂度
2013/07/01 PHP
Laravel框架下载,安装及路由操作图文详解
2019/12/04 PHP
MSN消息提示类
2006/09/05 Javascript
探讨在JQuery和Js中,如何让ajax执行完后再继续往下执行
2013/07/09 Javascript
技术男用来对妹子表白的百度首页
2014/07/23 Javascript
jQuery中cookie插件用法实例分析
2015/12/04 Javascript
封装的dialog插件 基于bootstrap模态对话框的简单扩展
2016/08/10 Javascript
jquery配合.NET实现点击指定绑定数据并且能够一键下载
2016/10/28 Javascript
ionic2打包android时gradle无法下载的解决方法
2017/04/05 Javascript
Angular2管道Pipe及自定义管道格式数据用法实例分析
2017/11/29 Javascript
vue2.0 实现导航守卫(路由守卫)
2018/05/21 Javascript
使用layui 渲染table数据表格的实例代码
2018/08/19 Javascript
JavaScript指定断点操作实例教程
2018/09/18 Javascript
Node.js系列之安装配置与基本使用(1)
2019/08/30 Javascript
layui数据表格跨行自动合并的例子
2019/09/02 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
解决vuex改变了state的值,但是页面没有更新的问题
2020/11/12 Javascript
python实现的各种排序算法代码
2013/03/04 Python
用Python计算三角函数之acos()方法的使用
2015/05/15 Python
Ruby元编程基础学习笔记整理
2016/07/02 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
2019/06/11 Python
选择Python写网络爬虫的优势和理由
2019/07/07 Python
Pandas聚合运算和分组运算的实现示例
2019/10/17 Python
OpenCV利用python来实现图像的直方图均衡化
2020/10/21 Python
详解h5页面在不同ios设备上的问题总结
2019/03/01 HTML / CSS
波兰灯具、照明和LED购物网站:Lampy.pl
2019/03/11 全球购物
雷曼兄弟的五金店:Lehman’s Hardware Store
2019/04/10 全球购物
社区母亲节活动方案
2014/03/05 职场文书
竞选班干部演讲稿
2014/04/24 职场文书
挂靠协议书
2015/01/27 职场文书
广告公司文案策划岗位职责
2015/04/14 职场文书
2015年安全保卫工作总结
2015/05/14 职场文书
关于PostgreSQL JSONB的匹配和交集问题
2021/09/14 PostgreSQL
python中数组和列表的简单实例
2022/03/25 Python