求相对路径的函数

2、写一个函数,算出两个文件的相对路径如 $a = ‘/a/b/c/d/e.php’; $b = ‘/a/b/12/34/c.php’; 计算出 $b 相对于 $a 的相路径。
$a = ‘/a/b/c/d/e.php’;
$b = ‘/a/b/12/34/c.php’;

//求$b相对于$a的相对路径
function getRelativelyPath($a,$b){
 //拆分成数组
 $a = explode(‘/’,$a);
 $b = explode(‘/’,$b);
 $path = ”;

 //将两个数组的索引重置
 $c = array_values(array_diff($a,$b));
 $d = array_values(array_diff($b,$a));
 
 //去除掉a路径的文件名
 array_pop($c);

 //将a路径中的目录名替换为..
 foreach($c as &$v) $v = ‘..’;
 
 //合并两个数组
 $e = array_merge($c,$d);

 //拼接路径
 foreach($e as &$v)
  $path .= $v.’/';

 return rtrim($path,’/');
}