php计算两个文件相对路径的方法 例如:计算出 $b 相对于 $a 的相对路径
程序员文章站
2022-05-09 22:55:27
...
$a="http://www.cnblogs.com/a/b/c/d/e.php";
$b="http://www.cnblogs.com/a/b/12/34/c.php";
$info_a = parse_url($a);//拆解url
$info_b = parse_url($b);//拆解url
$path_a = ltrim($info_a['path'],'/');//函数移除字符串左侧的空白字符或其他预定义字符。
$path_b = ltrim($info_b['path'],'/');//函数移除字符串左侧的空白字符或其他预定义字符。
$path_a = dirname($path_a);//该函数返回去掉文件名后的目录名。
$path_b = dirname($path_b);//该函数返回去掉文件名后的目录名。
$arr_a = explode('/',$path_a);// 转为数组
$arr_b = explode('/',$path_b);// 转为数组
//定义两个新数组
$pathinfo2 = array();
$pathinfo3 = array();
$is_true = false;
for ($i=0;$i<count($arr_a);$i++){
if ($arr_a[$i] !== $arr_b[$i]) {
$pathinfo2[] = '..';
if (!$is_true) {
for ($j = $i; $j < count($arr_b); $j++) {
$pathinfo3[] = $arr_b[$j];
}
$is_true = true;
}
}
}
$len_string = implode('/',array_merge($pathinfo2,$pathinfo3));
var_dump($len_string);
上一篇: pandas中使用绝对路径和相对路径