一道求$b相对于$a的相对路径的php代码
发布时间:2020-12-13 05:46:26 所属栏目: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 = explode("/",$a); $brr = explode("/",$b); $c = count($arr)-2
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)); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |