用PHP計算相對路徑

2021-08-25 19:50:52 字數 940 閱讀 4902

假如現在有兩個路徑:

$a = "/a/b/c/d/test.php";

$b = "/a/b/e/f/other.php";

請用php設計乙個函式,計算出$b相對於$a的路徑。

大致演算法就是:

根據『/』把路徑拆分放進陣列,然後從第乙個開始比較,相同的忽略掉,直到遇到不同的為止。

<?php

$a = "/a/b/c/d/test.php";

$b = "/a/b/e/f/other.php";

//拆分路徑放進陣列:

$_a = explode('/', $a);

$_b = explode('/', $b);

//開始比對陣列,存下不同的部分:

$remain_a = array_diff($_a, $_b);

$remain_b = array_diff($_b, $_a);

//$remain_a = array("c", "d", "test.php");

//$remain_b = array("e", "f", "other.php");

//算出$a路徑的剩餘深度

$count = count($remain_a);

//算出$b剩餘路徑,再合併成路徑形式: $b = "e/f/other.php"

$relative_path_b = join('/', $remain_b);

//計算相對路徑字首

for($i = 0; $i < $count-1; $i++)

$_path =$new . $relative_path_b;

//輸出 ../../e/f/other.php

echo $_path;

php計算相對路徑

計算兩個目錄的相對路徑,網上有好多 發現好多是用array diff assoc這個函式,這樣不對.我來寫乙個簡單的.created by phpstorm.user 優美 date 2019 9 9 time 19 59 function getpath path1,path2 arr1 expl...

路徑詳解 絕對路徑,相對路徑,根相對路徑

路徑詳解 重點 1 絕對路徑 1 什麼是絕對路徑 檔案從最高端目錄下開始的完整路徑 1 訪問網路資源 1 由以下四個部分組成 1 協議名稱 2 主機名 ip位址,網域名稱 3 目錄路徑 4 檔名 ex 1 協議名 2 主機名 網域名稱 3 目錄路徑 img4 檔名 bd logo1.png 2 訪問...

php 絕對路徑相對路徑2

define dedeinc str replace dirname file 是本地路徑,但是由於他與 對於web開發 引入php檔案 1.絕對路徑 絕對路徑是指檔案在硬碟上真正存在的路徑。帶碟符的比如 e book 網頁布 第2章 bg.jpg 使用絕對路徑的缺點 事實上,在網頁程式設計時,很少...