`
化蝶自在飞
  • 浏览: 2329321 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
社区版块
存档分类
最新评论

php过滤超链接并判断链接中文字是否为网址preg_replace_callback函数用法

    博客分类:
  • php
阅读更多
示例代码如下:
$str = '<a class="style" href="http://www.xiaojudeng.com/" target="_blank">www.xiaojudeng.com</a> <a href="http://www.xiaojudeng.com">小桔灯分类信息网</a> 过滤超链接';
$str = filter_url($str);


处理代码如下:
function filter_url($str){
return preg_replace_callback("/<a[^>]+>(.+?)<\/a>/i","filter_url_callback",$str);
}

function filter_url_callback($matchs){
  $str = $matchs[1];
  if(!$str) return '';
  $arr = array('www.','http://','.com','.cn','.org','.net','.cc');
   
  foreach($arr AS $k=>$v){
  if(stripos($str,$v) !==false) return '';
  }

  return $str;

}


如果超链接的文字为 www.xiaojudeng.com 的网址,也会被过滤掉.但是如果是纯文字的话就保留.
分享到:
评论

相关推荐

    ecmall 解决php5.6升级后的所有bug preg_replace_callback()

    在此次修复过程中,主要涉及到的是`preg_replace_callback()`函数的使用问题。`preg_replace_callback()`是PHP中的一个正则表达式处理函数,用于执行一个回调函数对每个匹配的字符串进行替换,而在PHP不同版本之间,...

    php中preg_replace_callback函数简单用法示例

    在PHP编程语言中,`preg_replace_callback`是一个非常实用的函数,它允许开发者在处理正则表达式匹配时,自定义替换的过程。这个函数的工作原理是:它接收一个模式(pattern)、一个回调函数(callback)以及一个...

    php正则preg_replace_callback函数用法实例

    本文将深入讲解`preg_replace_callback`函数的用法,并通过实例来展示如何使用这个函数。 ### preg_replace_callback函数简介 `preg_replace_callback`函数的工作原理是,它接收三个主要参数:第一个参数是正则...

    c#中的实现php中的preg_replace

    - PHP中使用`preg_replace`函数匹配图片并加上链接的方法 - PHP 正则表达式之正则处理函数小结(`preg_match`, `preg_match_all`, `preg_replace`, `preg_split`) - PHP正则替换变量指定字符的方法 - PHP中正则替换...

    详解PHP正则表达式替换实现(PHP preg_replace,PHP preg_replace)

    首先向你介绍下PHP preg_replace,PHP preg_replace的使用是我们实现的方法,那么对于PHP正则表达式替换实现过程我们从实例入手。 PHP正则表达式替换的相关概念: preg_replace:执行正则表达式的搜索和替换 mixed...

    php中使用preg_replace函数匹配图片并加上链接的方法

    在上述提供的示例代码中,演示了如何使用`preg_replace`函数来查找HTML中图片的`src`属性,并将图片包装在`&lt;a&gt;`标签中,从而为图片添加一个超链接。代码通过`file_get_contents`函数获取了指定网页的HTML源代码,并...

    慎用preg_replace危险的/e修饰符(一句话后门常用)

    preg_replace函数原型: mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit]) 特别说明: /e 修正符使 preg_replace() 将 replacement 参数当作 PHP 代码(在适当的逆向引用替换...

    PHP5.2下preg_replace函数的问题

    在PHP编程语言中,`preg_replace` 是一个非常重要的正则表达式替换函数,它能够按照指定的模式匹配字符串,并将匹配到的部分替换为新的内容。然而,在PHP 5.2版本中,`preg_replace` 函数可能会遇到一些特定的问题,...

    eregi_replace与preg_replace 函数代码的用法比较

    在本文中,我们将深入探讨`eregi_replace`与`preg_replace`这两个PHP函数,并通过具体的示例来解析它们之间的差异以及如何正确使用这些函数。同时,我们也会详细解释所提供的示例代码中的各种符号及其含义。 ### 一...

    php 升级到 5.3+ 后出现的一些错误,如 ereg(); ereg_replace(); 函数报错

    在php5.3环境下运行,常常会出现 ...不支持ereg_replace()函数,而使用preg_replace()函数。  解决方法:将不支持的函数修改为支持的函数即可。   例如  复制代码 代码如下:  if(eregi(‘^(‘value’, $val

    php小经验:解析preg_match与preg_match_all 函数

    这个例子中,`preg_match()`会在找到第一次匹配后停止,如果你想获取所有匹配项,就需要使用`preg_match_all()`函数。 `preg_match_all()`函数执行全局正则匹配,找出所有匹配的结果。其语法与`preg_match()`相似,...

    PHP中一个有趣的preg_replace函数详解

    事情的起因是下午遇到了 preg_replace 函数,我们都知道 preg_replace 函数可能会导致命令执行。现在我们来一些情况。 0x02 经过 踩坑1: 测试代码大概是这样的: foreach ($_GET as $regex =&gt; $value) { preg_...

    ECSHOP完美解决Deprecated: preg_replace()报错的问题

    3. 将使用/e修饰符的部分替换为preg_replace_callback函数,其中需要定义一个适当的回调函数来处理匹配的文本。 4. 如果ECSHOP的其他文件也出现类似错误,应采取相同的方法进行修改。 在实际操作中,需要注意的是,...

    自定义ubb代码,preg_replace()函数的一些代码

    该示例并未处理所有可能的注入风险,例如,`\[url\]javascript:alert('xss')\[\/url\]`,因此在实际应用中,应当使用更安全的函数,如`htmlspecialchars_decode()`和`htmlspecialchars()`组合,或者使用`filter_var...

Global site tag (gtag.js) - Google Analytics