一道求$b相对于$a的相对路径的php代码


Posted in PHP onAugust 08, 2010

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 相关文章推荐
第1次亲密接触PHP5(1)
Oct 09 PHP
discuz7 phpMysql操作类
Jun 21 PHP
深入php数据采集的详解
Jun 02 PHP
php单例模式实现方法分析
Mar 14 PHP
PHP基于MySQL数据库实现对象持久层的方法
Jun 17 PHP
PHP微信开发之二维码生成类
Jun 26 PHP
基于PHP实现简单的随机抽奖小程序
Jan 05 PHP
php时间函数用法分析
May 28 PHP
PHP检测接口Traversable用法详解
Dec 29 PHP
搜索附近的人PHP实现代码
Feb 11 PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 PHP
Yii框架实现对数据库的CURD操作示例
Sep 03 PHP
字母顺序颠倒而单词顺序不变的php代码
Aug 08 #PHP
PHP通过header实现文本文件下载的代码
Aug 08 #PHP
php下保存远程图片到本地的办法
Aug 08 #PHP
用PHP实现递归循环每一个目录
Aug 08 #PHP
为IP查询添加GOOGLE地图功能的代码
Aug 08 #PHP
PHP下对数组进行排序的函数
Aug 08 #PHP
PHP 冒泡排序算法的实现代码
Aug 08 #PHP
You might like
使用PHP静态变量当缓存的方法
2013/11/13 PHP
php中unserialize返回false的解决方法
2014/09/22 PHP
PHP中Memcache操作类及用法实例
2014/12/12 PHP
详解PHP的Yii框架的运行机制及其路由功能
2016/03/17 PHP
php读取qqwry.dat ip地址定位文件的类实例代码
2016/11/15 PHP
laravel框架与其他框架的详细对比
2019/10/23 PHP
function, new function, new Function之间的区别
2007/03/08 Javascript
前端开发必须知道的JS之原型和继承
2010/07/06 Javascript
JQuery UI的拖拽功能实现方法小结
2012/03/14 Javascript
jquery 实现上下滚动效果示例代码
2013/08/09 Javascript
举例详解AngularJS中ngShow和ngHide的使用方法
2015/06/19 Javascript
BootStrap下jQuery自动完成的样式调整
2016/05/30 Javascript
bootstrap侧边栏圆点导航
2017/01/11 Javascript
Js中async/await的执行顺序详解
2017/09/22 Javascript
快速了解vue-cli 3.0 新特性
2018/02/28 Javascript
nodeJs爬虫的技术点总结
2018/05/13 NodeJs
node.js调用C++函数的方法示例
2018/09/21 Javascript
微信小程序实现获取用户信息并存入数据库操作示例
2019/05/07 Javascript
微信小程序上传图片到php服务器的方法
2019/05/23 Javascript
vue实现分页加载效果
2019/12/24 Javascript
Vue中keep-alive的两种应用方式
2020/07/15 Javascript
[48:31]完美世界DOTA2联赛PWL S3 DLG vs Phoenix 第二场 12.17
2020/12/19 DOTA
Python可变参数用法实例分析
2017/04/02 Python
Python3如何解决字符编码问题详解
2017/04/23 Python
Python实现自动为照片添加日期并分类的方法
2017/09/30 Python
python实现隐马尔科夫模型HMM
2018/03/25 Python
Python实现分数序列求和
2020/02/25 Python
python图片剪裁代码(图片按四个点坐标剪裁)
2020/03/10 Python
python 连续不等式语法糖实例
2020/04/15 Python
用HTML5制作一个简单的桌球游戏的教程
2015/05/12 HTML / CSS
瑞典轮胎在线:Tirendo.se
2018/06/21 全球购物
迎接领导欢迎词
2014/01/11 职场文书
入党综合考察材料
2014/06/02 职场文书
服务标语口号
2014/07/01 职场文书
离婚协议书范文2016
2016/03/18 职场文书
分享7个 Python 实战项目练习
2022/03/03 Python