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 相关文章推荐
mysql5写入和读出乱码解决
Nov 25 PHP
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
Apr 12 PHP
通过PHP CLI实现简单的数据库实时监控调度
Jul 01 PHP
解析在PHP中使用全局变量的几种方法
Jun 24 PHP
php判断linux下程序问题实例
Jul 09 PHP
如何使用微信公众平台开发模式实现多客服
Jan 06 PHP
php实现的xml操作类
Jan 15 PHP
PHP编写RESTful接口的方法
Feb 21 PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
Jun 13 PHP
php file_get_contents取文件中数组元素的方法
Apr 01 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
Apr 24 PHP
laravel 实现根据字段不同值做不同查询
Oct 23 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
destoon复制新模块的方法
2014/06/21 PHP
php is_executable判断给定文件名是否可执行实例
2016/09/26 PHP
PHP PDO操作MySQL基础教程
2017/06/05 PHP
php mysql PDO 查询操作的实例详解
2017/09/23 PHP
PHP面向对象五大原则之开放-封闭原则(OCP)详解
2018/04/04 PHP
PHP实现十进制数字与二十六进制字母串相互转换操作示例
2018/08/10 PHP
showModelessDialog()使用详解
2006/09/21 Javascript
JQuery Tips(3) 关于$()包装集内元素的改变
2009/12/14 Javascript
使用javascript:将其它类型值转换成布尔类型值的解决方法详解
2013/05/07 Javascript
window.event.keyCode兼容IE和Firefox实现js代码
2013/05/30 Javascript
jQuery实现鼠标滑过图片移动特效
2016/12/08 Javascript
JS仿京东移动端手指拨动切换轮播图效果
2020/04/10 Javascript
JS轮播图中缓动函数的封装
2020/11/25 Javascript
js实现股票实时刷新数据案例
2017/05/14 Javascript
VUE元素的隐藏和显示(v-show指令)
2017/06/23 Javascript
vue.js开发实现全局调用的MessageBox组件实例代码
2017/11/22 Javascript
Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法
2018/08/08 Javascript
原生JS实现自定义下拉单选选择框功能
2018/10/12 Javascript
vue权限问题的完美解决方案
2019/05/08 Javascript
vue.js实现备忘录demo
2019/06/26 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
2019/12/09 Javascript
[01:05:00]2018国际邀请赛 表演赛 Pain vs OpenAI
2018/08/24 DOTA
Python 中的with关键字使用详解
2016/09/11 Python
Python高级特性之闭包与装饰器实例详解
2019/11/19 Python
python3实现elasticsearch批量更新数据
2019/12/03 Python
python列表删除和多重循环退出原理详解
2020/03/26 Python
在PyTorch中使用标签平滑正则化的问题
2020/04/03 Python
Django创建一个后台的基本步骤记录
2020/10/02 Python
前端面试必备之html5的新特性
2017/09/05 HTML / CSS
h5页面唤起app如果没安装就跳转下载(iOS和Android)
2020/06/03 HTML / CSS
职专应届生求职信
2013/11/16 职场文书
社区庆中秋节活动方案
2014/02/07 职场文书
汉语言文学专业求职信
2014/06/19 职场文书
群众路线自查自纠工作情况报告
2014/10/28 职场文书
2014年法制宣传日活动方案
2014/11/02 职场文书
生鲜超市—未来中国最具有潜力零售业态
2019/08/02 职场文书