<?php
function replace($url){
$url = str_replace("\\r","\r",$url);
$url = str_replace("\\n","\n<BR>",$url);
$url = str_replace("\\n\\r","\n\r",$url);
$in=array(
'`(?:https?|ftp)://\S+[[:alnum:]]/?(?<!\.(png|jpeg|jpg|gif)\b)`si',
'`(?<!//)(www\.\S+[[:alnum:]]/?)(?<!\.(png|jpeg|jpg|gif)\b)`si',
//'`(?:https?|ftp)://\S+[[:alnum:]]\.(png|jpeg|jpg|gif)\b`si',
//'`(?<!//)(?:www\.\S+[[:alnum:]]\.(png|jpeg|jpg|gif)\b)`si'
);
// это для ссылок и фото
$out=array(
'<a style="color:navy;" href="$0" rel="nofollow">$0</a>',
'<a style="color:navy;" href="http://$0" rel=\'nofollow\'>$0</a>',
//'<img src="$0" rel="nofollow">',
//'<img src="http://$0" rel=\'nofollow\'>'
);
return preg_replace($in, $out, $url);
}
echo replace('dfd dfdf http://site.ru/ ddd fff http://img.com/pic.png text');
preferences:
41.28 ms | 402 KiB | 5 Q