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 备份数据库代码(生成word,excel,json,xml,sql)
Jun 23 PHP
2014过年倒计时示例
Jan 31 PHP
PHP的password_hash()使用实例
Mar 17 PHP
详解php设置session(过期、失效、有效期)
Nov 12 PHP
给WordPress的编辑后台添加提示框的代码实例分享
Dec 25 PHP
PHP生成图片缩略图类示例
Jan 12 PHP
PHP将字符串首字母大小写转换的实例
Jan 21 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
Jun 29 PHP
Laravel5.4框架中视图共享数据的方法详解
Sep 05 PHP
PHP的cookie与session原理及用法详解
Sep 27 PHP
php进程(线程)通信基础之System V共享内存简单实例分析
Nov 09 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 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
joomla数据库操作示例代码
2016/01/06 PHP
使用PHP免费发送定时短信的实例
2016/10/24 PHP
php实现微信公众平台发红包功能
2018/06/14 PHP
IE与Firefox下javascript getyear年份的兼容性写法
2007/12/20 Javascript
js的逻辑运算符 ||
2010/05/31 Javascript
js 得到文件后缀(通过正则实现)
2013/07/08 Javascript
js闭包实例汇总
2014/11/09 Javascript
js在IE与firefox的差异集锦
2014/11/11 Javascript
Linux下使用jq友好的打印JSON技巧分享
2014/11/18 Javascript
javascript删除数组重复元素的方法汇总
2015/06/24 Javascript
jquery.cookie实现的客户端购物车操作实例
2015/12/24 Javascript
Jquery Easyui验证组件ValidateBox使用详解(20)
2016/12/18 Javascript
BootStrapTable服务器分页实例解析
2016/12/20 Javascript
jQuery中 bind的用法简单介绍
2017/02/13 Javascript
Js apply方法详解
2017/02/16 Javascript
详解vee-validate的使用个人小结
2017/06/07 Javascript
Vue单页及多页应用全局配置404页面实践记录
2018/05/22 Javascript
vue+iview/elementUi实现城市多选
2019/03/28 Javascript
javascript数组常见操作方法实例总结【连接、添加、删除、去重、排序等】
2019/06/13 Javascript
javascript自定义右键菜单插件
2019/12/16 Javascript
[01:38]女王驾到——至宝魔廷新尊技能&特效展示
2020/06/16 DOTA
一个检测OpenSSL心脏出血漏洞的Python脚本分享
2014/04/10 Python
Python实现简单字典树的方法
2016/04/29 Python
python 连接sqlite及简单操作
2017/06/30 Python
学python安装的软件总结
2019/10/12 Python
Python模块的制作方法实例分析
2019/12/21 Python
python颜色随机生成器的实例代码
2020/01/10 Python
python读取配置文件方式(ini、yaml、xml)
2020/04/09 Python
Python爬取梨视频的示例
2021/01/29 Python
CSS3 calc()会计算属性详解
2018/02/27 HTML / CSS
HTML最新标准HTML5总结(必看)
2016/06/13 HTML / CSS
使用useBean标志初始化BEAN时如何接受初始化参数
2012/02/11 面试题
大学学生会辞职信
2015/05/13 职场文书
烛光里的微笑观后感
2015/06/17 职场文书
大学自主招生自荐信(2016精选篇)
2016/01/28 职场文书
干货:如何写好观后感 !
2019/05/21 职场文书