例如:文件A 的路径是 /home/web/lib/img/cache.php

文件B的路径是 /home/web/api/img/temp/show.php

那么,文件A相对于文件B的路径是 ../../lib/img/cache.php

functiongetRelativePath($urla,$urlb){/*******第一步:获取两个文件的相同路径并去掉*****///获取路径名$a_dirname=dirname($urla);//$a_dirname=/home/web/lib/img/$b_dirname=dirname($urlb);//$b_dirname=/home/web/api/img/temp//去掉左边的"/"$a_dirname=trim($urla,"/");$b_dirname=trim($urlb,"/");//$a_dirname=trim($a_dirname,"/");//$b_dirname=trim($b_dirname,"/");echo$a_dirname,",",$b_dirname."<br>";//分割路径名$a_arr=explode("/",$a_dirname);$b_arr=explode("/",$b_dirname);$count=0;//获取相同路径部分的个数$num=min(count($a_arr),count($b_arr));//去除相同的部分for($i=0;$i<$num;$i++){if($a_arr[$i]==$b_arr[$i]){unset($a_arr[$i]);$count++;}else{break;}}//print_r($a_arr);/******将相同部分用"../代替"并重新组合成相对路径******/$relativepath=str_repeat("../",$count).implode("/",$a_arr);echo$relativepath;}$urla="/home/web/lib/img/cache.php";$urlb="/home/web/api/img/temp/show.php";getRelativePath($urla,$urlb)