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 相关文章推荐
网站当前的在线人数
Oct 09 PHP
ADODB结合SMARTY使用~超级强
Nov 25 PHP
超强分页类2.0发布,支持自定义风格,默认4种显示模式
Jan 02 PHP
PHP 类相关函数的使用详解
May 10 PHP
如何使用php绘制在图片上的正余弦曲线
Jun 08 PHP
分享3个php获取日历的函数
Sep 25 PHP
PHP MySql增删改查的简单实例
Jun 21 PHP
php通过会话控制实现身份验证实例
Oct 18 PHP
PHP实现的数组和XML文件相互转换功能示例
Mar 15 PHP
Laravel+Intervention实现上传图片功能示例
Jul 09 PHP
PHP单元测试配置与使用方法详解
Dec 27 PHP
PHP设计模式入门之状态模式原理与实现方法分析
Apr 26 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
url decode problem 解决方法
2011/12/26 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
php中Array2xml类实现数组转化成XML实例
2014/12/08 PHP
php获取字符串中各个字符出现次数的方法
2015/02/23 PHP
将PHP从5.3.28升级到5.3.29时Nginx出现502错误
2015/05/09 PHP
php curl中gzip的压缩性能测试实例分析
2016/11/08 PHP
php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
2020/06/06 PHP
jQuery Tools tab使用介绍
2012/07/14 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
js 判断所选时间(或者当前时间)是否在某一时间段的实现代码
2015/09/05 Javascript
Bootstrap每天必学之标签页(Tab)插件
2020/08/09 Javascript
JS快速实现移动端拼图游戏
2016/09/05 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
2016/11/02 Javascript
最常见和最有用的字符串相关的方法详解
2017/02/06 Javascript
js指定日期增加指定月份的实现方法
2018/12/19 Javascript
jQuery实现侧边栏隐藏与显示的方法详解
2018/12/22 jQuery
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
Python语言编写电脑时间自动同步小工具
2013/03/08 Python
Python爬虫:通过关键字爬取百度图片
2017/02/17 Python
python实现跨excel的工作表sheet之间的复制方法
2018/05/03 Python
python如何查看微信消息撤回
2018/11/27 Python
linux中如何使用python3获取ip地址
2019/07/15 Python
python-sys.stdout作为默认函数参数的实现
2020/02/21 Python
有关HTML5页面在iPhoneX适配问题
2017/11/13 HTML / CSS
购买瑞典当代设计的腕表和太阳眼镜:TRIWA
2016/10/30 全球购物
不用游标的SQL语句有哪些
2012/09/07 面试题
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
2015/07/30 面试题
优秀求职信
2014/05/29 职场文书
工程质检员岗位职责
2015/04/08 职场文书
门球健将观后感
2015/06/16 职场文书
2016教师学习党章心得体会
2016/01/15 职场文书
MySQL中存储时间的最佳实践指南
2021/07/01 MySQL
dubbo集成zipkin获取Traceid的实现
2021/07/26 Java/Android
MySQL中CURRENT_TIMESTAMP的使用方式
2021/11/27 MySQL
golang操作redis的客户端包有多个比如redigo、go-redis
2022/04/14 Golang
Python按顺序遍历并读取文件夹中文件
2022/04/29 Python