ホームページ  >  記事  >  バックエンド開発  >  phpで2つのディレクトリの相対パスを求める例(phpが相対パスを取得する)_PHPチュートリアル

phpで2つのディレクトリの相対パスを求める例(phpが相対パスを取得する)_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:35:00808ブラウズ

パスの深さを制限せずに 2 つのディレクトリの相対パスを検索します

コードをコピーします コードは次のとおりです:

/**
* $a ($a) を基準とした $b の相対パスを出力します
* パスの深さの制限なし、最適化なし、関数の実装のみ
*/
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 {
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);
}

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/746620.html技術記事パスの深さを制限せずに、2 つのディレクトリの相対パスを検索します。次のようにコードをコピーします。 /** * $a に対する $b の相対パスを出力します ($a) * パスの深さを制限しないと、最適化は行われません。 、...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。