PHP实现把文本中的URL转换为链接的auolink()函数分享


Posted in PHP onJuly 29, 2014

其实我在《把文本中的URL地址转换为可点击链接的JavaScript、PHP自定义函数》一文中介绍过PHP代码如何实现将URL地址转化成链接的方法,今天给大家介绍一个更加简洁的版本,先来看看PHP的源代码:

auolink() API

/**

* Author: SeeDZ

* From: http://code.seebz.net/p/autolink-php/

**/

function autolink($str, $attributes = array()) {

    $attrs = '';

    foreach ($attributes as $attribute=>$value) {

        $attrs .= " {$attribute}=\"{$value}\"";

    }

    

    $str = ' '.$str;

    $str = preg_replace('`([^"=\'>])((http|https|ftp|ftps)://[^\s< ]+[^\s<\.)])`i', '$1<a href="$2" rel="external nofollow" '.$attrs.'>$2</a>', $str);

    $str = substr($str, 1);

    

    return $str;

}

怎么样,很简洁吧!看看函数的API文档吧:

语法

string autolink ( string $str [, array $attributes = array() ] )

参数介绍

str ? 必选(String 类型数据)。需要查询替换的文本。
attributes -可选(Array 类型数据)。替换链接的一些可选参数。

返回值

返回替换后的文本。

autolink() 调用方法

autolink使用起来也很方便,我们可以只传一个参数,即为必选的需要替换的字符文本。例如:

<?php

 

$str = 'A link : http://example.com/?param=value#anchor.';

$str = autolink($str);

 

echo $str; // A link : <a href="http://example.com/?param=value#anchor" rel="external nofollow" >http://example.com/?param=value#anchor</a>.

 

?>

另外我们还可以设置一些额外的链接的参数,可以让生成的链接在新窗口中打开,或者不希望搜索引擎索引替换的链接。例如:

<?php

 

$str = 'http://example.com/';

$str = autolink($str, array("target"=>"_blank","rel"=>"nofollow"));

 

echo $str; // <a href="http://example.com/" rel="external nofollow" target="_blank" >http://example.com/</a>

 

?>

怎么样,方便好用吧!

PHP 相关文章推荐
php+mysql开源XNA 聚合程序发布 下载
Jul 13 PHP
关于PHP模板Smarty的初级使用方法以及心得分享
Jun 21 PHP
分享下PHP register_globals 值为on与off的理解
Sep 26 PHP
php对数组排序代码分享
Feb 24 PHP
destoon设置自定义搜索的方法
Jun 21 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
Jul 05 PHP
PHP实现自动对图片进行滚动显示的方法
Mar 12 PHP
PHP编辑器PhpStrom运行缓慢问题
Feb 21 PHP
Laravel学习教程之View模块详解
Sep 18 PHP
PHP生成指定范围内的N个不重复的随机数
Mar 18 PHP
PHP const定义常量及global定义全局常量实例解析
May 28 PHP
Laravel中如何轻松容易的输出完整的SQL语句
Jul 26 PHP
PHP自带函数给数字或字符串自动补齐位数
Jul 29 #PHP
Win2003+apache+PHP+SqlServer2008 配置生产环境
Jul 29 #PHP
php实现读取超大文件的方法
Jul 28 #PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
Jul 28 #PHP
php Imagick获取图片RGB颜色值
Jul 28 #PHP
PHP exif扩展方法开启详解
Jul 28 #PHP
取得单条网站评论以数组形式进行输出
Jul 28 #PHP
You might like
人族 Terran 基本策略
2020/03/14 星际争霸
php 静态化实现代码
2009/03/20 PHP
PHP函数实现分页含文本分页和数字分页
2014/10/23 PHP
PHP依赖注入原理与用法分析
2018/08/21 PHP
Jquery Select操作方法集合脚本之家特别版
2010/05/17 Javascript
Javascript将string类型转换int类型
2010/12/09 Javascript
jQuery boxy弹出层插件中文演示及使用讲解
2011/02/24 Javascript
Jquery下EasyUI组件中的DataGrid结果集清空方法
2014/01/06 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
2015/03/04 Javascript
IE10中flexigrid无法显示数据的解决方法
2015/07/26 Javascript
jquery对象访问是什么及使用方法介绍
2016/05/03 Javascript
基于BootStrap Metronic开发框架经验小结【六】对话框及提示框的处理和优化
2016/05/12 Javascript
MUI 上拉刷新/下拉加载功能实例代码
2017/04/13 Javascript
解决vue动态为数据添加新属性遇到的问题
2018/09/18 Javascript
详解Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)
2019/04/20 Javascript
浅析Python多线程下的变量问题
2015/04/28 Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
2016/10/12 Python
Python查看微信撤回消息代码
2018/06/07 Python
Python实现对字典分别按键(key)和值(value)进行排序的方法分析
2018/12/19 Python
利用ctypes获取numpy数组的指针方法
2019/02/12 Python
python3使用matplotlib绘制散点图
2019/03/19 Python
pycharm新建一个python工程步骤
2019/07/16 Python
python中seaborn包常用图形使用详解
2019/11/25 Python
Python3爬虫里关于代理的设置总结
2020/07/30 Python
scrapy-splash简单使用详解
2021/02/21 Python
颇特女士:NET-A-PORTER(直邮中国)
2020/07/11 全球购物
大学生学习生活的自我评价
2013/11/01 职场文书
幼儿园家长安全责任书
2014/07/22 职场文书
庆七一宣传标语
2014/10/08 职场文书
情人节单身感言
2015/08/03 职场文书
员工考勤管理制度
2015/08/06 职场文书
《吃水不忘挖井人》教学反思
2016/02/22 职场文书
合作合同协议书
2016/03/21 职场文书
python OpenCV学习笔记
2021/03/31 Python
简单了解 MySQL 中相关的锁
2021/05/25 MySQL
springboot为异步任务规划自定义线程池的实现
2022/06/14 Java/Android