当前位置:首页 > PHP教程 > php应用 > 列表

php自动给网址加上链接的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-27 14:26:05 浏览: 评论:0 

这篇文章主要介绍了php自动给网址加上链接的方法,可实现对本文中的网址加上链接的功能,涉及正则匹配的相关技巧,需要的朋友可以参考下。

本文实例讲述了php自动给网址加上链接的方法,分享给大家供大家参考,具体实现方法如下:

这里自动匹配页面里的网址,包含http,ftp等,自动给网址加上链接

  1. function text2links($str='') { 
  2.   if($str=='' or !preg_match('/(http|www\.|@)/i', $str)) { return $str; } 
  3.   $lines = explode("\n", $str); $new_text = ''; 
  4.   while (list($k,$l) = each($lines)) { 
  5.     // replace links: 
  6.     $l = preg_replace("/([ \t]|^)www\./i", "\\1http://www.", $l); 
  7.     $l = preg_replace("/([ \t]|^)ftp\./i", "\\1ftp://ftp.", $l); 
  8.     $l = preg_replace("/(http:\/\/[^ )\r\n!]+)/i", 
  9.       "<a href=\"\\1\">\\1</a>", $l); 
  10.     $l = preg_replace("/(https:\/\/[^ )\r\n!]+)/i", 
  11.       "<a href=\"\\1\">\\1</a>", $l); 
  12.     $l = preg_replace("/(ftp:\/\/[^ )\r\n!]+)/i", 
  13.       "<a href=\"\\1\">\\1</a>", $l); 
  14.     $l = preg_replace( 
  15.       "/([-a-z0-9_]+(\.[_a-z0-9-]+)*@([a-z0-9-]+(\.[a-z0-9-]+)+))/i", 
  16.       "<a href=\"mailto:\\1\">\\1</a>", $l); 
  17.     $new_text .= $l."\n"; 
  18.   } 
  19.   return $new_text; 
  20. } 
  21.    
  22. //使用范例: 
  23. $text = "Welcome www.phpfensi.com :-)"; 
  24. print text2links($text); 

希望本文所述对大家的php程序设计有所帮助。

Tags: php上链接

分享到: