<?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:]]/?`si',
'`(?<!//)(www\.\S+[[:alnum:]]/?)`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:
38.26 ms | 402 KiB | 5 Q