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"