PHP练习-计算两个文件的相对路径


给出两个文件的完整地址,返回A文件到B文件的一个相对路径

思路分析

从两个路径不同处开始用../填充之后的路径填充完毕后拼接B文件名称(不考虑不同目录)

function filePath($file1,$file2)
{
    $f1 = explode('/',$file1);
    $f2 = explode('/',$file2);
    $path = '';
    foreach ($f1 as $k => $v){
        if(!array_key_exists($k,$f2)){
            $path .= '../';
        }
        if(strspn('.',$v)){
            $path .= end($f2);
        }
    }
    return $path;
}
$f1 = 'a/b/c/d/e.php';
$f2 = 'a/b/c/f.php';
echo filePath($f1,$f2);

输出结果:../f.php

上一篇 下一篇

评论

登录后可发表评论