>  기사  >  php教程  >  文本转换超链接函数

文本转换超链接函数

WBOY
WBOY원래의
2016-06-07 11:34:561003검색

文本转换超链接函数:
本文以联盟http://www.heimaolianmeng.com/heimaoseojishu/该篇文章为例,将描述中的文本链接转换成可点击的超链接,并且以新窗口打开。

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 //从空格断开
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 = "http://" . $url1 . "" . $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 = "http://" . $url1 . "" . $url2;
break;
}
if ($i == $length)
$url3 = "http://" . $str2[$n] . "";
}
} else
$url3 = "http://" . $str2[$n];
} else
$url3 = "http://" . $str2[$n];
$url .= $url3;
}
if (substr($str, 0, 7) == "http://")
$url = "" . $str2[0] . "" . $url;
else
$url = $str2[0] . $url;
return $url;
}

AD:真正免费,域名+虚机+企业邮箱=0元

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.