PHP面试题:求两个绝对路径的相对路径

function test($a, $b) {
    $arr_a = explode( '/',$a);
    $arr_b = explode( '/',$b);
    
    $diff_arr = array_diff_assoc($arr_a,$arr_b);//求出数组的差数组
    
    $count = count($arr_b) - count($diff_arr);//
    $path = '';
    for ($i=0; $i < $count-1; $i++) {
        $path .= '../';
    }
    
    $path .= implode('/', $diff_arr);
    var_dump($path);die;
}


test('/a/b/c/d/a.php', '/a/b/1/2/3/4/5/6/7/b.php'); 

运行结果 : string(30) "../../../../../../../c/d/a.php"

猜你喜欢

转载自blog.csdn.net/qq_33636325/article/details/80289794