求两个目录的相对路径
时间:2021-07-01 10:21:17
帮助过:3人阅读
求两个目录的相对路径,不限制路径深度
- /**
- * 输出$b相对于$a的相对路径($a)
- * 不限限制路径深度,没有做什么优化,只是实现功能
- */
- function getPath($a, $b)
- {
- $aArr = explode('/', dirname($a));
- $bArr = explode('/', dirname($b));
-
- $aLen = count($aArr);
- $bLen = count($bArr);
-
- $len = max($aLen, $bLen);
-
- $k = 0;
-
- for($i = 0; $i < $len; $i++)
- {
- if($k == 0)
- {
- if(isset($aArr[$i]) && ($aArr[$i] != $bArr[$i]))
- {
- $d .= '../';
-
- if(isset($bArr[$i]))
- {
- $nP[$i] = $bArr[$i];
- }
-
- $k = $k + 1;
- }
- }
- else
- {
- if(isset($aArr[$i]))
- {
- $d .= '../';
- }
- if(isset($bArr[$i]))
- {
- $nP[$i] = $bArr[$i];
- }
- }
- }
-
- echo $d.implode('/', $nP);
- }
|