Применение:
echo links($text);
где $text - текст.
<?php
function url_replace($u)
{
if(!isset($u[3]))
{
return '<a href="'.$u[1].'">'.$u[2].'</a>';
}
else
{
if(preg_match('#^http://'.str_replace('.', '\.', $_SERVER['SERVER_NAME']).'.+\.(jpe?g|png|gif|w?bmp)$#i', $u[3]))
return '<img src="'.$u[3].'" alt="pict"/>';
else
return '<a href="'.$u[3].'">'.$u[3].'</a>';
}
}
function links($msg)
{
return preg_replace_callback("#\[url=(https?://.+)\](.+)\[/url\]|(https?://\S+[^\s.,>)\];'\"!?])#", 'url_replace', $msg);
}
?>