首页 > 其他 > 详细

计算两个文件相对路径

时间:2016-06-30 19:45:45      阅读:114      评论:0      收藏:0      [点我收藏+]

/*
*计算两个文件相对路径
 */
function relative_path($path1,$path2) {
    $arr1 = explode(‘/‘,dirname($path1));
    $arr2 = explode(‘/‘,dirname($path2));
    for($i=0,$len = count($arr2);$i < $len;$i++) {
        if($arr1[$i] != $arr2[$i]) {
            break;
        }
        #不在同一个根目录下
        var_dump($len - $i);
        if($i == 1) {
            $return_path = array();
        }
        #在同一个根目录下
        if($i != 1 && $i < $len) {
            $return_path = array_fill(0,$len - $i,"..");
        }
        #在同一个目录下
        if($i == $len) {
            $return_path = array(‘./‘);
        }
        $return_path = array_merge($return_path,array_slice($arr1, $i));
        return implode(‘/‘, $return_path);
    }

}
    $a = ‘/a/b/c/d/e.php‘;
    $b = ‘/a/b/12/34/c.php‘;
    $c = ‘/e/b/c/d/f.php‘;
    $d = ‘/a/b/c/d/g.php‘;
    relative_path($a,$b);
    //echo relative_path($a,$b);//  ../../../../..//a/b/c/d
    echo "<br/>";
    //echo relative_path($a,$c);//  ../../../../..//a/b/c/d
    echo "<br/>";
    //echo relative_path($a,$d);//  ../../../../..//a/b/c/d
    echo "<br/>";

计算两个文件相对路径

原文:http://www.cnblogs.com/lilyhomexl/p/5630930.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!