PHP面试题:如何算出两个文件的相对路径

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 119 收藏 0 点赞 0 评论 0

写一个函数,算出两个文件的相对路径,如:

  1. $a = ‘/a/b/c/d/e.php’;
  2. $b =’/a/b/12/34/c.php’;
<?php
$a = '/a/b/c/d/e.php';   
$b ='/a/b/12/34/c.php';
$path1 = explode('/',dirname($a));
$path2 = explode('/',dirname($b));
$aLen = count($path1);
$bLen = count($path2);
$maxLen = max($aLen,$bLen);
for($i = 1; $i < $maxLen; $i++){
if($path1[$i] != $path2[$i] && isset($path1[$i])){
    if(isset($path2[$i]))$bUrl[]=$path2[$i];
    $path .= "../";
}else{
    $bUrl[]=$path2[$i];
}
}
echo $path.implode('/',$bUrl).'/'.basename($b);
?>

评论列表
文章目录