PHP實(shí)現(xiàn)把文本中的URL轉(zhuǎn)換為鏈接的auolink()函數(shù)分享
其實(shí)我在《把文本中的URL地址轉(zhuǎn)換為可點(diǎn)擊鏈接的JavaScript、PHP自定義函數(shù)》一文中介紹過(guò)PHP代碼如何實(shí)現(xiàn)將URL地址轉(zhuǎn)化成鏈接的方法,今天給大家介紹一個(gè)更加簡(jiǎn)潔的版本,先來(lái)看看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;
}
怎么樣,很簡(jiǎn)潔吧!看看函數(shù)的API文檔吧:
語(yǔ)法
string autolink ( string $str [, array $attributes = array() ] )
參數(shù)介紹
str – 必選(String 類型數(shù)據(jù))。需要查詢替換的文本。
attributes -可選(Array 類型數(shù)據(jù))。替換鏈接的一些可選參數(shù)。
返回值
返回替換后的文本。
autolink() 調(diào)用方法
autolink使用起來(lái)也很方便,我們可以只傳一個(gè)參數(shù),即為必選的需要替換的字符文本。例如:
<?php
$str = 'A link : http://example.com/?param=value#anchor.';
$str = autolink($str);
echo $str; // A link : <a rel="external nofollow" >http://example.com/?param=value#anchor</a>.
?>
另外我們還可以設(shè)置一些額外的鏈接的參數(shù),可以讓生成的鏈接在新窗口中打開(kāi),或者不希望搜索引擎索引替換的鏈接。例如:
<?php
$str = 'http://example.com/';
$str = autolink($str, array("target"=>"_blank","rel"=>"nofollow"));
echo $str; // <a rel="external nofollow" target="_blank" >http://example.com/</a>
?>
怎么樣,方便好用吧!
- PHP將HTML轉(zhuǎn)換成文本的實(shí)現(xiàn)代碼
- php中將html中的br換行符轉(zhuǎn)換為文本輸入中的換行符
- 使用PHP+JavaScript將HTML頁(yè)面轉(zhuǎn)換為圖片的實(shí)例分享
- 分享php代碼將360瀏覽器導(dǎo)出的favdb的sqlite數(shù)據(jù)庫(kù)文件轉(zhuǎn)換為html
- php實(shí)現(xiàn)二進(jìn)制和文本相互轉(zhuǎn)換的方法
- php將文本文件轉(zhuǎn)換csv輸出的方法
- php實(shí)現(xiàn)使用正則將文本中的網(wǎng)址轉(zhuǎn)換成鏈接標(biāo)簽
- 把文本中的URL地址轉(zhuǎn)換為可點(diǎn)擊鏈接的JavaScript、PHP自定義函數(shù)
- php導(dǎo)出csv格式數(shù)據(jù)并將數(shù)字轉(zhuǎn)換成文本的思路以及代碼分享
- 自動(dòng)把純文本轉(zhuǎn)換成Web頁(yè)面的php代碼
- php實(shí)現(xiàn)轉(zhuǎn)換html格式為文本格式的方法
相關(guān)文章
Codeigniter生成Excel文檔的簡(jiǎn)單方法
之前看了使用PHPExcel中導(dǎo)出數(shù)據(jù)到Excel文件的方法,但是似乎比較復(fù)雜。icech找到了一個(gè)針對(duì)Codeigniter的類:CI-Excel-Generation-Library,使用方法十分簡(jiǎn)單。需要的朋友可以參考下2014-06-06
Codeigniter中mkdir創(chuàng)建目錄遇到權(quán)限問(wèn)題和解決方法
這篇文章主要介紹了Codeigniter中mkdir創(chuàng)建目錄遇到權(quán)限問(wèn)題和解決方法,需要的朋友可以參考下2014-07-07
深入剖析瀏覽器退出之后php還會(huì)繼續(xù)執(zhí)行么
覽器退出之后php還會(huì)繼續(xù)執(zhí)行么?下面小編就為大家介紹一下究竟覽器退出之后php還會(huì)不會(huì)繼續(xù)執(zhí)行。一起跟隨小編過(guò)來(lái)看看吧2016-05-05
PHP使用range協(xié)議實(shí)現(xiàn)輸出文件斷點(diǎn)續(xù)傳代碼實(shí)例
這篇文章主要介紹了PHP使用range協(xié)議實(shí)現(xiàn)輸出文件斷點(diǎn)續(xù)傳代碼實(shí)例,需要的朋友可以參考下2014-07-07
分享ThinkPHP3.2中關(guān)聯(lián)查詢解決思路
這篇文章主要介紹了ThinkPHP3.2中關(guān)聯(lián)查詢解決思路的相關(guān)資料,需要的朋友可以參考下2015-09-09

