溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何使用php實(shí)現(xiàn)相對(duì)路徑轉(zhuǎn)絕對(duì)路徑

發(fā)布時(shí)間:2020-07-22 09:49:18 來源:億速云 閱讀:172 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關(guān)如何使用php實(shí)現(xiàn)相對(duì)路徑轉(zhuǎn)絕對(duì)路徑,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

php實(shí)現(xiàn)相對(duì)路徑轉(zhuǎn)絕對(duì)路徑的方法:可以通過preg_replace()函數(shù)來實(shí)現(xiàn)。preg_replace()函數(shù)可以執(zhí)行一個(gè)正則表達(dá)式的搜索和替換。若搜索目標(biāo)是字符串?dāng)?shù)組,則該函數(shù)返回一個(gè)數(shù)組。

我們可以通過preg_replace()函數(shù)來實(shí)現(xiàn)相對(duì)路徑轉(zhuǎn)絕對(duì)路徑。

函數(shù)介紹

preg_replace() 函數(shù)執(zhí)行一個(gè)正則表達(dá)式的搜索和替換。

函數(shù)語法

mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

搜索 subject 中匹配 pattern 的部分, 以 replacement 進(jìn)行替換。

參數(shù)說明:

  • $pattern: 要搜索的模式,可以是字符串或一個(gè)字符串?dāng)?shù)組。

  • $replacement: 用于替換的字符串或字符串?dāng)?shù)組。

  • $subject: 要搜索替換的目標(biāo)字符串或字符串?dāng)?shù)組。

  • $limit: 可選,對(duì)于每個(gè)模式用于每個(gè) subject 字符串的最大可替換次數(shù)。 默認(rèn)是-1(無限制)。

  • $count: 可選,為替換執(zhí)行的次數(shù)。

返回值

如果 subject 是一個(gè)數(shù)組, preg_replace() 返回一個(gè)數(shù)組, 其他情況下返回一個(gè)字符串。

如果匹配被查找到,替換后的 subject 被返回,其他情況下 返回沒有改變的 subject。如果發(fā)生錯(cuò)誤,返回 NULL。

代碼實(shí)現(xiàn):

//相對(duì)路徑轉(zhuǎn)化成絕對(duì)路徑
<?
function relative_to_absolute($content, $feed_url) { 
preg_match('/(http|https|ftp):///', $feed_url, $protocol); 
$server_url = preg_replace("/(http|https|ftp|news):///", "", $feed_url);
//開源OSPhP.COM.CN
$server_url = preg_replace("//.*/", "", $server_url); 
    if ($server_url == '') { 
        return $content; 
    } 
    if (isset($protocol[0])) {
//開源代碼OSPhP.COm.CN
$new_content = preg_replace('/href="//', 'href="'.$protocol[0].$server_url.'/', $content); 
$new_content = preg_replace('/src="//', 'src="'.$protocol[0].$server_url.'/', $new_content);  //開源OSPhP.COM.CN
    } else { 
$new_content = $content; 
    } 
    return $new_content; 
} 
?>

看完上述內(nèi)容,你們對(duì)如何使用php實(shí)現(xiàn)相對(duì)路徑轉(zhuǎn)絕對(duì)路徑有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI