求两个目录的相对路径,不限制路径深度
代码如下:
/**
* 输出$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);
}
* 输出$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);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。