// пример использования
$text = "Пример текста с ссылками. Например, ссылка на Яндекс - http://yandex.ru или вот еще на Вконтакте - www.vk.com. Вот так!";
echo changeTextToLink($text);
// Преобразование url из текста в активную ссылку
// @param string $text - входящий текст
// @return string - текст с замененными ссылками
function changeTextToLink($text){
$text = preg_replace("/(^|[\n ])([\w]*?)((www|ftp)\.[^ \,\"\t\n\r<]*[^ \.])/is", "$1$2<a href=\"http://$3\" >$3</a>", $text);
$text = preg_replace("/(^|[\n ])([\w]*?)((ht|f)tp(s)?:\/\/[\w]+[^ \,\"\n\r\t<]*[^ \.])/is", "$1$2<a href=\"$3\" >$3</a>", $text);
return($text);
}
function tolink($buf) {
$x=explode(" ",$buf);
$newbuf='';
for ($j=0; $j<count($x); $j++) {
if (preg_match
("/(http:\/\/)?([a-z_0-9-.]+\.[a-z]{2,3}(([ \"'>\r\n\t])|(\/([^ \"'>\r\n\t]*)?)))/",
$x[$j],$ok))
$newbuf.=str_replace($ok[2],"<a href='http://$ok[2]'>$ok[2]</a>",
str_replace("http://","",$x[$j]))." ";
else
$newbuf.=$x[$j]." ";
}
return $newbuf;
}
// вызов функции следующим образом
echo tolink("ваш текст содержащий ссылку на ресурс, например на www.yandex.ru");
Функция tolink() принимает в качестве аргумента ваш текст и возвращает текст с уже замененными URL на активные ссылки.