栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > PHP面试题库

php面试题之[求相对路径]

php面试题之[求相对路径]

题目:写一个函数,算出两个文件的相对路径如 $a = ‘/a/b/c/d/e.php’; $b = ‘/a/b/12/34/c.php’; 计算出 $b 相对于 $a 的相对路径应该是 ../../c/d
:<?php

function getRelative($a , $b)
{
$arr_a = explode(“/” , $a) ;
$brr_b = explode(“/” , $b) ;
$i = 1 ;
while (true) {
if($arr_a[$i] == $brr_b[$i]) {
$i ++ ;
} else {
break ;
}
}

$c = count($brr_b) ;
$d = count($arr_a) ;
$e = ($c>$d)?$c:$d ;
$str1 = ” ;
$str2 = ” ;
for ($j = $i ;$j<$e ;$j++) {
if(isset($arr_a[$j])) {
if($j<($d-1)){
$str1 .= $arr_a[$j] . “/” ;
} else {
$str1 .= $arr_a[$j] ;
}

}

if(isset($brr_b[$j])) {
$str2 .= “../” ;
}
}
return $str2 . $str1 ;
}

$a = “/c/b/c/d/k/h/t/e.php” ;
$b = “/a/b/e/f/h.php” ;
$relative = getRelative($a,$b) ;
var_dump($relative);
?>

运行结果:string(34) “../../../../../c/b/c/d/k/h/t/e.php”

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/266427.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号