Use PHP to find the relative path of two files

  • 2020-06-15 07:55:01
  • OfStack


function compare($ph1,$ph2){
    $ret = '';
    $_f1Arr = explode("/",$ph1);
    $_f2Arr = explode("/",$ph2);

    $f1 = array_pop($_f1Arr);
    $f2 = array_pop($_f2Arr);
    for($i=0;$i<count($_f1Arr);$i++){
        if($_f1Arr[$i] !== $_f2Arr[$i])
            break;
    }
    for($j= $i-1;$j<count($_f1Arr);$j++){
       $ret .= "../";
    }

    for($i-1;$i<count($_f2Arr);$i++){
       $ret .= $_f2Arr[$i].'/';
    }
    return $ret.$f2;
}
$file1 = "aaa/ddd/ccc/ddd/test/a.js";
$file2 = "aaa/ddd/ccc/ddd/test/b.js";
echo compare($file1,$file2);
?>

B relative path to A...

Related articles: