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

 更新时间:2014年07月29日 10:28:55   投稿:junjie  
这篇文章主要介绍了PHP实现把文本中的URL转换为链接的auolink()函数分享,非常简洁易用的一个函数,原作者还有另外一些很Nice的PHP函数,需要的朋友可以参考下

其实我在《把文本中的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邮件类

    推荐个功能齐全的发送PHP邮件类...
    2007-01-01
  • YII Framework框架教程之缓存用法详解

    YII Framework框架教程之缓存用法详解

    这篇文章主要介绍了YII Framework框架教程之缓存用法,结合实例形式详细分析了Yii框架缓存的结构,原理,使用方法与相关注意事项,需要的朋友可以参考下
    2016-03-03
  • PHP单例模式详解及实例代码

    PHP单例模式详解及实例代码

    本文介绍PHP单例模式,文中讲解了单例模式的概念、单例模式的特点、使用单例模式的原因及场景及PHP单例模式代码实例,需要的码农可以参考下
    2016-12-12
  • 解析PHP之提取多维数组指定列的方法

    解析PHP之提取多维数组指定列的方法

    这篇文章主要介绍了解析PHP之提取多维数组指定列的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-01-01
  • 浅谈PHP调用Webservice思路及源码分享

    浅谈PHP调用Webservice思路及源码分享

    NuSoap是PHP环境下的WebService编程工具,用于创建或调用WebService。它是一个开源软件,是完全采用PHP语言编写的、通过HTTP收发SOAP消息的一系列PHP类。NuSOAP的一个优势是不需要扩展库的支持,这种特性使得NuSoap可以用于所有的PHP环境,不受服务器安全设置的影响。 
    2014-06-06
  • Laravel相关的一些故障解决

    Laravel相关的一些故障解决

    这篇文章主要给大家介绍了关于Laravel相关的一些故障的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者使用Laravel具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-08-08
  • Redis使用Eval多个键值自增的操作实例

    Redis使用Eval多个键值自增的操作实例

    下面小编就为大家带来一篇Redis使用Eval 多个键值自增的操作实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • PHP 获取客户端 IP 地址的方法实例代码

    PHP 获取客户端 IP 地址的方法实例代码

    这篇文章主要介绍了PHP 获取客户端 IP 地址的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2018-11-11
  • WordPress中缩略图的使用以及相关技巧

    WordPress中缩略图的使用以及相关技巧

    这篇文章主要介绍了WordPress中缩略图的使用以及相关技巧,包括调用文章的第一个图片以及设置特征图片等手段,需要的朋友可以参考下
    2015-11-11
  • Zend Framework入门教程之Zend_Mail用法示例

    Zend Framework入门教程之Zend_Mail用法示例

    这篇文章主要介绍了Zend Framework中Zend_Mail用法,结合实例形式分析了Zend Framework中Zend_Mail组件的功能、使用步骤与相关操作技巧,需要的朋友可以参考下
    2016-12-12

最新评论