zoukankan      html  css  js  c++  java
  • PHP实现删除非站内外部链接实例代码

    /**
     *  删除非站内链接
     *
     * @access    public
     * @param     string  $body  内容
     * @param     array  $allow_urls  允许的超链接
     * @return    string
     */
    function Replace_Links( &$body, $allow_urls=array()  )
    {
        $host_rule = join('|', $allow_urls);
        $host_rule = preg_replace("#[ ]#", '', $host_rule);
        $host_rule = str_replace('.', "\.", $host_rule);
        $host_rule = str_replace('/', "\/", $host_rule);
        $arr = '';
        preg_match_all("#<a([^>]*)>(.*)</a>#iU", $body, $arr);
        if( is_array($arr[0]) )
        {
            $rparr = array();
            $tgarr = array();
            foreach($arr[0] as $i=>$v)
            {
                if( $host_rule != '' && preg_match('#'.$host_rule.'#i', $arr[1][$i]) )
                {
                    continue;
                } else {
                    $rparr[] = $v;
                    $tgarr[] = $arr[2][$i];
                }
            }
            if( !empty($rparr) )
            {
                $body = str_replace($rparr, $tgarr, $body);
            }
        }
        $arr = $rparr = $tgarr = '';
        return $body;
    }

  • 相关阅读:
    NSString
    xib和storyboard的使用方法
    drawRect画线和使用CGContext
    CGAffineTransform动画
    【概念】静态成员
    【c#】Application.Exit和Close有什么不同
    【c#】const和readonly关键字
    【概念】设计模式
    【概念】常见数据结构与算法
    【概念】索引器
  • 原文地址:https://www.cnblogs.com/ZDPPU/p/7149231.html
Copyright © 2011-2022 走看看