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


Posted in PHP onJune 02, 2015

本文实例讲述了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 3water.com :-)";
print text2links($text);

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

PHP 相关文章推荐
php若干单维数组遍历方法的比较
Sep 20 PHP
php绘图中显示不出图片的原因及解决
Mar 05 PHP
Yii操作数据库的3种方法
Mar 11 PHP
php中HTTP_REFERER函数用法实例
Nov 21 PHP
php中base64_decode与base64_encode加密解密函数实例
Nov 24 PHP
教大家制作简单的php日历
Nov 17 PHP
php获取图片信息的方法详解
Dec 10 PHP
twig模板常用语句实例小结
Feb 04 PHP
PHP MySql增删改查的简单实例
Jun 21 PHP
php生成与读取excel文件
Oct 14 PHP
PHP调用其他文件中的类
Apr 02 PHP
php面试实现反射注入的详细方法
Sep 30 PHP
php将字符串随机分割成不同长度数组的方法
Jun 01 #PHP
php正则preg_replace_callback函数用法实例
Jun 01 #PHP
php实现读取和写入tab分割的文件
Jun 01 #PHP
php从文件夹随机读取文件的方法
Jun 01 #PHP
php计算整个目录大小的方法
Jun 01 #PHP
php获取系统变量方法小结
May 29 #PHP
typecho插件编写教程(六):调用接口
May 28 #PHP
You might like
模仿OSO的论坛(二)
2006/10/09 PHP
php printf输出格式使用说明
2010/12/05 PHP
Smarty3配置及入门语法
2017/02/22 PHP
PHP实现的常规正则验证helper公共类完整实例
2017/04/27 PHP
Mootools 1.2教程 正则表达式
2009/09/15 Javascript
60个很实用的jQuery代码开发技巧收集
2014/12/15 Javascript
jQuery显示和隐藏 常用的状态判断方法
2015/01/29 Javascript
BootStrap selectpicker
2016/06/20 Javascript
jquery实现上传文件大小类型的验证例子(推荐)
2016/06/25 Javascript
AngularJs  Using $location详解及示例代码
2016/09/02 Javascript
Angularjs之filter过滤器(推荐)
2016/11/27 Javascript
使用微信内嵌H5网页解决JS倒计时失效问题
2017/01/13 Javascript
微信小程序商城项目之购物数量加减(3)
2017/04/17 Javascript
BootStrap 表单控件之单选按钮水平排列
2017/05/23 Javascript
React数据传递之组件内部通信的方法
2017/12/31 Javascript
angular2中Http请求原理与用法详解
2018/01/11 Javascript
Vue源码探究之状态初始化
2018/11/14 Javascript
Python中动态创建类实例的方法
2017/03/24 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
Python设计模式之原型模式实例详解
2019/01/18 Python
最小二乘法及其python实现详解
2020/02/24 Python
jenkins+python自动化测试持续集成教程
2020/05/12 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
2020/05/18 Python
Python Pandas数据分析工具用法实例
2020/11/05 Python
HTML5 拖放(Drag 和 Drop)详解与实例代码
2017/09/14 HTML / CSS
GNC健安喜美国官网:美国第一营养品牌
2016/07/22 全球购物
Steve Madden官网:美国鞋类品牌
2017/01/29 全球购物
卡骆驰德国官方网站:Crocs德国
2019/03/29 全球购物
爱国演讲稿400字
2014/05/07 职场文书
调研汇报材料范文
2014/08/17 职场文书
“四风”问题自我剖析材料思想汇报
2014/09/23 职场文书
违反单位工作制度检讨书
2014/10/25 职场文书
乌镇导游词
2015/02/02 职场文书
创建文明城市倡议书
2015/04/28 职场文书
船舶调度指挥系统——助力智慧海事
2022/02/18 无线电
python运算符之与用户交互
2022/04/13 Python