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中的超全局变量
Oct 09 PHP
在php MYSQL中插入当前时间
Apr 06 PHP
PHP中__get()和__set()的用法实例详解
Jun 04 PHP
php顺序查找和二分查找示例
Mar 27 PHP
如何让CI框架支持service层
Oct 29 PHP
php字符串函数学习之strstr()
Mar 27 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
May 22 PHP
在Mac OS下搭建LNMP开发环境的步骤详解
Mar 10 PHP
PHP对称加密算法(DES/AES)类的实现代码
Nov 14 PHP
Ubuntu彻底删除PHP7.0的方法
Jul 27 PHP
PHP匿名函数(闭包函数)详解
Mar 22 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
Feb 27 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
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
PHP $_FILES函数详解
2011/03/09 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
PHP获取当前页面URL函数实例
2014/10/22 PHP
php实现两表合并成新表并且有序排列的方法
2014/12/05 PHP
PHPTree――php快速生成无限级分类
2018/03/30 PHP
如何使用jQuery Draggable和Droppable实现拖拽功能
2013/07/05 Javascript
js获取电脑分辨率的思路及操作
2013/11/22 Javascript
使用jquery选择器如何获取父级元素、同级元素、子元素
2014/05/14 Javascript
js实现文件上传表单域美化特效
2015/11/02 Javascript
BootStrap的弹出框(Popover)支持鼠标移到弹出层上弹窗层不隐藏的原因及解决办法
2016/04/03 Javascript
所见即所得的富文本编辑器bootstrap-wysiwyg使用方法详解
2016/05/27 Javascript
基于AngularJs + Bootstrap + AngularStrap相结合实现省市区联动代码
2016/05/30 Javascript
在Vue中如何使用Cookie操作实例
2017/07/27 Javascript
vuejs使用FormData实现ajax上传图片文件
2017/08/08 Javascript
详解vue中引入stylus及报错解决方法
2017/09/22 Javascript
总结javascript三元运算符知识点
2018/09/28 Javascript
JS箭头函数和常规函数之间的区别实例分析【 5 个区别】
2020/05/27 Javascript
[53:36]Liquid vs VP Supermajor决赛 BO 第三场 6.10
2018/07/05 DOTA
Python实现简单生成验证码功能【基于random模块】
2018/02/10 Python
Python实现接受任意个数参数的函数方法
2018/04/21 Python
Python 实现引用其他.py文件中的类和类的方法
2018/04/29 Python
Python 爬虫之Beautiful Soup模块使用指南
2018/07/05 Python
python实现屏保计时器的示例代码
2018/08/08 Python
Python爬虫将爬取的图片写入world文档的方法
2018/11/07 Python
python下载库的步骤方法
2019/10/12 Python
关于python 的legend图例,参数使用说明
2020/04/17 Python
意大利和国际最佳时尚品牌:Drestige
2019/12/28 全球购物
德国玩具商店:Planet Happy DE
2021/01/16 全球购物
综合测评自我鉴定
2013/10/08 职场文书
致全体运动员广播稿
2014/02/01 职场文书
2014领导班子专题民主生活会对照检查材料思想汇报
2014/09/23 职场文书
防灾减灾宣传标语
2014/10/07 职场文书
2014年个人工作总结模板
2014/12/15 职场文书
公司总经理岗位职责
2015/04/01 职场文书
Mysql排序的特性详情
2021/11/01 MySQL