码迷,mamicode.com
首页 > Web开发 > 详细

php获取两个文件的相对路径

时间:2014-08-03 23:32:16      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:php获取两个文件的相对路径

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

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

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

function getRelativePath($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)


php获取两个文件的相对路径,布布扣,bubuko.com

php获取两个文件的相对路径

标签:php获取两个文件的相对路径

原文地址:http://fengguangke.blog.51cto.com/6379465/1535099

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!