パスの深さを制限せずに 2 つのディレクトリの相対パスを検索します
- /**
-
- * $a ($a) を基準とした $b の相対パスを出力します
-
- * パスの深さの制限なし、最適化なし、関数の実装のみ
-
- */
-
- function getPath($a, $b)
-
- {
-
- $aArr = destroy('/', dirname($a));
-
- $bArr = 爆発('/', 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);
-
- }
コードをコピー
|