如何批量替換相對位址為絕對位址?PHP

2022-02-06 11:16:31 字數 2763 閱讀 7074

如果你的url鏈結是相對路徑「static/mapi.css」,你想把他批量替換成絕對路徑「那麼,你可以這樣做:

寫乙個php檔案,把需要替換的**寫進去。

這個**的意思就是,把#base_url#替換成  。

這句話的意思是,把resource檔案裡的內容替換一遍,然後放到cloud資料夾裡。fileutil::copydir("resource","cloud",true);

<?php

//需要替換的關鍵字

$globals["patterns"] = array

( "/#base_url#/");

//替換後的內容,和上面的匹配規則一一對應

$globals["replacements"] = array

( ""

//""

//""

);/*

* * 操縱檔案類

* * 例子:

* fileutil::copydir('b','d/e'); 測試複製資料夾 建立乙個d/e資料夾,把b資料夾下的內容複製進去

* fileutil::copyfile('b/1/2/3.exe','b/b/3.exe'); 測試複製檔案 建立乙個b/b資料夾,並把b/1/2資料夾中的3.exe檔案複製進去

* fileutil::createdir('a/1/2/3'); 測試建立資料夾 建乙個a/1/2/3資料夾

* fileutil::unlinkfile('b/d/3.exe'); 測試刪除檔案 刪除b/d/3.exe檔案 */

class

fileutil }}

/*** 刪除檔案

** @param string $aimurl

* @return boolean

*/function unlinkfile($aimurl

) else

}/**

* 複製資料夾

** @param string $olddir

* @param string $aimdir

* @param boolean $overwrite 該引數控制是否覆蓋原檔案

* @return boolean

*/function copydir($olddir, $aimdir, $overwrite = false

)

if (!file_exists($aimdir

))

$dirhandle = opendir($olddir

);

while(false !== ($file = readdir($dirhandle

)))

if (!is_dir($olddir . $file

))

else

}return

closedir($dirhandle

); }

/*** 複製檔案

** @param string $fileurl

* @param string $aimurl

* @param boolean $overwrite 該引數控制是否覆蓋原檔案

* @return boolean

*/function copyfile($fileurl, $aimurl, $overwrite = false

)

if (file_exists($aimurl) && $overwrite == false

) elseif (file_exists($aimurl) && $overwrite == true

)

$aimdir = dirname($aimurl

); fileutil::createdir($aimdir

);

copy($fileurl, $aimurl

);

//替換變數

$apifilepointer = fopen($aimurl, 'r');

$apifilecontent = fread($apifilepointer, filesize($aimurl

));

//只在js、html、css檔案進行替換

if (preg_match('/(\.js|\.html|\.css|\.htm)$/', $aimurl

))

fclose($apifilepointer

);

echo

$aimurl."\r\n";

$apifilepointer = fopen($aimurl, 'w+');

fwrite($apifilepointer, $apifilecontent

);

fclose($apifilepointer

);

//替換變數

return

true

; }

}fileutil::copydir("resource","cloud",true

);?>

再寫乙個bat批處理檔案,來執行這個php。

php release.php

現在,只需點選bat檔案,全部頁面裡的相對位址就會變成絕對位址了。

相對位址轉絕對位址

發乙個相對位址轉絕對位址的函式 今天在研究jquery ajax功能的時候遇到乙個問題,通過 load url a load乙個網頁的鏈結後獲取到的位址資訊是相對於當前執行ajax程式的網頁的絕對位址。比如我在 c x a.html 網頁執行 www.romotc.com 網頁中有乙個鏈結 a bo...

URI URL URN,相對位址 絕對位址

uri uniform resource identifier 標準資源標示符,可以進一步分為定位器 名稱,或者二者兼具 通過一定規則解碼可以得到資源位置 在html中的href採用的是uri引用 uri引用分為絕對引用和相對引用 絕對引用以方案名和冒號開頭,其他為相對引用 url uniform ...

相對位址和絕對位址

什麼是相對位址 document.location.href 就是相對位址跳轉,這個方法實現的是在當前路徑的基礎上進行跳轉 什麼是絕對位址 網路位址顧名思義就是直接跳轉到網路的位址,以http或者https等開頭的位址,這種位址可以直接跳轉到頁面 本地位址如果沒有特別說明在哪乙個盤,那麼所有的跳轉都...