zoukankan      html  css  js  c++  java
  • PHP文本路径转换为链接文字

    <?php
    /**
    * 文本路径转换为有链接的文字
    * @param string $str 转换内容
    * @return string
    */
    function urlToLink($str) { 
        $arr = array("www." => "http://www."); 
        $str = strtr($str, $arr); 
        $arr = array("http://http://" => "http://"); 
        $str = strtr($str, $arr); 
        $str2 = explode("http://", $str); 
        for ($n = 1; isset($str2[$n]); $n ++) { 
            $str3 = explode(".", $str2[$n]); 
            if (isset($str3[1])) { 
                $str4 = explode("www.", $str2[$n]); 
                if ((isset($str4[1]) && isset($str3[2])) || !isset($str4[1])) { 
                    $length = strlen($str2[$n]); 
                    for ($i = 0; $i <= $length; $i ++) {
                        //从空格断开 
                        if (($i - 1) == strlen(trim(mb_substr($str2[$n], 0, $i, 'gb2312')))) { 
                            $ii = $i - 1; 
                            $url1 = mb_substr($str2[$n], 0, $ii, 'gb2312'); 
                            $url2 = mb_substr($str2[$n], $ii, $length, 'gb2312'); 
                            $url3 = "<a href="http://" . $url1 . "" target="_blank">http://" . $url1 . "</a>" . $url2; 
                            break; 
                        } 
     
                        //从出现汉字处断开 
                        if ($i != strlen(mb_substr($str2[$n], 0, $i, 'gb2312'))) { 
                            $ii = $i - 1; 
                            $url1 = mb_substr($str2[$n], 0, $ii, 'gb2312'); 
                            $url2 = mb_substr($str2[$n], $ii, $length, 'gb2312'); 
                            $url3 = "<a href="http://" . $url1 . "" target="_blank">http://" . $url1 . "</a>" . $url2; 
                            break; 
                        } 
                        if ($i == $length) 
                            $url3 = "<a href="http://" . $str2[$n] . "" target="_blank">http://" . $str2[$n] . "</a>"; 
                    } 
                } else 
                    $url3 = "http://" . $str2[$n]; 
            } else 
                $url3 = "http://" . $str2[$n]; 
            $url .= $url3; 
        } 
        if (substr($str, 0, 7) == "http://") 
            $url = "<a href="http://$str2[0]" target="_blank">" . $str2[0] . "</a>" . $url; 
        else 
            $url = $str2[0] . $url; 
        return $url; 
    }
    ?>
  • 相关阅读:
    Java中的权限修饰符
    return,break,continue三者的区别
    JS代码放在不同位置的区别
    创建画笔工具
    关于SPH的核函数求导过程
    c++多级指针与“多维”数组 摘自别人博客
    RAP开发入门-搭建RAP开发环境(一)
    06 media媒体查询
    resolution 像素密度
    手动配置viewport-04
  • 原文地址:https://www.cnblogs.com/yudis/p/5609044.html
Copyright © 2011-2022 走看看