写一个函数,算出两个文件的相对路径 (b相对于a)
http://hi.baidu.com/ken00821/blog/item/6a4cf8d48dc7a4ce50da4b09.html
function getRelativePath($a,$b){$a_url = array(dirname($a));$b_url = array(dirname($b));$a_arr = explode('/',$a_url[0]);$b_arr = explode('/',$b_url[0]);$len = count($a_arr);$art1 = '';$art2 = ''; for($i=1;$i<$len;$i++){ if($a_arr[$i]<>$b_arr[$i]){ $art1.= '../'; $art2.= $a_arr[$i].'/'; } } return $art1.$art2; }$a = '/a/b/c/d/e.php';$b = '/a/b/12/34/c.php';echo getRelativePath($a, $b); //../../c/d/ function getRelativePath($a,$b){// =/MyWebSite/dev/gov1Dev/config/dbConfig.php// =/MyWebSite/dev/gov1Dev/index.php//a=/MyWebSite/dev/gov1Dev/config/dbConfig.php//b=/MyWebSite/dev/gov1Dev/pages/level1.php//echo "a=".$a."<br>";//echo "b=".$b."<br>";$fileName = substr($a,strripos($a,"/")+1);$a_url = array(dirname($a));$b_url = array(dirname($b));$a_arr = explode('/',$a_url[0]);$b_arr = explode('/',$b_url[0]);$len = count($a_arr);$len1 = count($b_arr);$art1 = '';$art2 = '';for($i=1;$i<$len;$i++){ if($a_arr[$i]<>$b_arr[$i]){ $art1.= '../'; $art2.= $a_arr[$i].'/'; }}if((count($a_arr)-count($b_arr))>0)return $art2.$fileName; elsereturn $art1.$art2.$fileName; //return $art2.$fileName; }