Find the relative path between two directories, without limiting the path depth
Copy the code The code is as follows:
/**
* Output the relative path of $b relative to $a ($a)
* No limit on path depth, no optimization, just implementation of the function
*/
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);
}
http://www.bkjia.com/PHPjc/746620.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/746620.htmlTechArticleFind the relative paths of two directories without limiting the path depth. Copy the code as follows: /** * Output $b Relative path relative to $a ($a) * No limit on path depth, no optimization,...