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多用户计数器代码
Mar 11 PHP
关于在php.ini中添加extension=php_mysqli.dll指令的说明
Jun 14 PHP
php摘要生成函数(无乱码)
Feb 04 PHP
PHP邮件发送类PHPMailer用法实例详解
Sep 22 PHP
PHP使用Face++接口开发微信公众平台人脸识别系统的方法
Apr 17 PHP
学习php设计模式 php实现建造者模式
Dec 07 PHP
两种php实现图片上传的方法
Jan 22 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
Apr 11 PHP
深入理解PHP之OpCode原理详解
Jun 01 PHP
PHP简单读取PDF页数的实现方法
Jul 21 PHP
[原创]PHP正则删除html代码中a标签并保留标签内容的方法
May 23 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
Jun 16 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
PhpMyAdmin中无法导入sql文件的解决办法
2010/01/08 PHP
php表单转换textarea换行符的方法
2010/09/10 PHP
php提示Failed to write session data错误的解决方法
2014/12/17 PHP
常用PHP封装分页工具类
2017/01/14 PHP
通过php动态传数据到highcharts
2017/04/05 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
jquery validation插件表单验证的一个例子
2010/03/03 Javascript
关于javascript中this关键字(翻译+自我理解)
2010/10/20 Javascript
jquery更换文章内容与改变字体大小代码
2013/09/30 Javascript
js之ActiveX控件使用说明 new ActiveXObject()
2014/03/03 Javascript
NodeJS学习笔记之Http模块
2015/01/13 NodeJs
jQuery插件开发精品教程让你的jQuery提升一个台阶
2016/01/27 Javascript
利用JS实现简单的日期选择插件
2017/01/23 Javascript
Iphone手机、安卓手机浏览器控制默认缩放大小的方法总结(附代码)
2017/08/18 Javascript
js实现复制功能(多种方法集合)
2018/01/06 Javascript
微信小程序日历插件代码实例
2019/12/04 Javascript
原生js实现购物车功能
2020/09/23 Javascript
微信小程序:报错(in promise) MiniProgramError
2020/10/30 Javascript
如何在Vue项目中添加接口监听遮罩
2021/01/25 Vue.js
vite2.0+vue3移动端项目实战详解
2021/03/03 Vue.js
linux系统使用python监测网络接口获取网络的输入输出
2014/01/15 Python
Python实现程序的单一实例用法分析
2015/06/03 Python
python编程线性回归代码示例
2017/12/07 Python
python生成requirements.txt的两种方法
2019/09/18 Python
Django+uni-app实现数据通信中的请求跨域的示例代码
2019/10/12 Python
Python3爬虫中关于Ajax分析方法的总结
2020/07/10 Python
Python Selenium库的基本使用教程
2021/01/04 Python
英国最大的宠物商店:Pets at Home
2019/04/17 全球购物
英国最大的汽车配件在线商店:Euro Car Parts
2019/09/30 全球购物
廉政承诺书范文
2015/04/28 职场文书
公司员工手册范本
2015/05/14 职场文书
升学宴来宾致辞
2015/07/27 职场文书
Nginx+Tomcat实现负载均衡、动静分离的原理解析
2021/03/31 Servers
详解如何使用Node.js实现热重载页面
2021/05/06 Javascript
python执行js代码的方法
2021/05/13 Python
Mysql数据库事务的脏读幻读及不可重复读详解
2022/05/30 MySQL