站长资源网络编程
一道求$b相对于$a的相对路径的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
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 = explode("/",$a);
$brr = explode("/",$b);
$c = count($arr)-2;
$d = count($brr)-2;
//之所以减二,一个是不在后面的文件名,
//一个是数组的索引是从0开始的,比数组中的第一维的个数要小一
$e = ($c>$d) ? $c:$d;
$str1 = $str2 = '';
for ($j=0;$j<=$e;$j++) {
$cur_a = isset($arr[$j]) ? $arr[$j] : '';
$cur_b = isset($brr[$j]) ? $brr[$j] : '';
if ($cur_a == $cur_b) {
continue;
} else {
if ($j <= $c)
{
$str1.='/'.$cur_a;
}
if ($j <= $d )
{
$str2.="../";
}
}
}
return $str2.substr($str1,1,strlen($str1));
}
上一篇:一道关于php变量引用的面试题
最新资源
- 蔡琴《金装蔡琴》XRCD2引进版[WAV+CUE][1G]
- 低音皇后官灵芝.2010 -《低霸度精选17首》2CD 天
- 孙露《如果没有你》1:1母盘直刻版[WAV分轨][512
- lol全球总决赛lpl三号种子是谁 S14全球总决赛lp
- lol全球总决赛lcs二号种子是谁 S14全球总决赛lc
- lol全球总决赛lck一号种子是谁 S14全球总决赛lc
- BradMehldau-ApresFaure(2024)[24-96]FLAC
- IlCannone-FrancescaDegoPlaysPaganinisViolin(
- Tchaikovsky,Babajanian-PianoTrios-Gluzman,Mo
- 费玉清.1987-费玉清十周年旧曲情怀4CD【东尼】【