php自动给网址加上链接的方法
本文实例讲述了php自动给网址加上链接的方法。分享给大家供大家参考。具体实现方法如下:
这里自动匹配页面里的网址,包含http,ftp等,自动给网址加上链接
functiontext2links($str=''){
if($str==''or!preg_match('/(http|www\.|@)/i',$str)){return$str;}
$lines=explode("\n",$str);$new_text='';
while(list($k,$l)=each($lines)){
//replacelinks:
$l=preg_replace("/([\t]|^)www\./i","\\1http://www.",$l);
$l=preg_replace("/([\t]|^)ftp\./i","\\1ftp://ftp.",$l);
$l=preg_replace("/(http:\/\/[^)\r\n!]+)/i",
"<ahref=\"\\1\">\\1</a>",$l);
$l=preg_replace("/(https:\/\/[^)\r\n!]+)/i",
"<ahref=\"\\1\">\\1</a>",$l);
$l=preg_replace("/(ftp:\/\/[^)\r\n!]+)/i",
"<ahref=\"\\1\">\\1</a>",$l);
$l=preg_replace(
"/([-a-z0-9_]+(\.[_a-z0-9-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)+))/i",
"<ahref=\"mailto:\\1\">\\1</a>",$l);
$new_text.=$l."\n";
}
return$new_text;
}
//使用范例:
$text="Welcomewww.nhooo.com:-)";
printtext2links($text);
希望本文所述对大家的php程序设计有所帮助。