本文实例讲述了php自动给网址加上链接的方法。分享给大家供大家参考。具体实现方法如下:
这里自动匹配页面里的网址,包含http,ftp等,自动给网址加上链接
function text2links($str=\'\') {
if($str==\'\' or !preg_match(\'/(http|www\\.|@)/i\', $str)) { return $str; }
$lines = explode(\"\\n\", $str); $new_text = \'\';
while (list($k,$l) = each($lines)) {
// replace links:
$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\",
\"<a href=\\\"\\\\1\\\">\\\\1</a>\", $l);
$l = preg_replace(\"/(https:\\/\\/[^ )\\r\\n!]+)/i\",
\"<a href=\\\"\\\\1\\\">\\\\1</a>\", $l);
$l = preg_replace(\"/(ftp:\\/\\/[^ )\\r\\n!]+)/i\",
\"<a href=\\\"\\\\1\\\">\\\\1</a>\", $l);
$l = preg_replace(
\"/([-a-z0-9_]+(\\.[_a-z0-9-]+)*@([a-z0-9-]+(\\.[a-z0-9-]+)+))/i\",
\"<a href=\\\"mailto:\\\\1\\\">\\\\1</a>\", $l);
$new_text .= $l.\"\\n\";
}
return $new_text;
}
//使用范例:
$text = \"Welcome www.phpstudy.net :-)\";
print text2links($text);
希望本文所述对大家的php程序设计有所帮助。
本文地址:https://www.stayed.cn/item/18121
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我