一道求$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 相关文章推荐
php str_replace的替换漏洞
Mar 15 PHP
关于JSON以及JSON在PHP中的应用技巧
Nov 27 PHP
实用的PHP带公钥加密类分享(每次加密结果都不一样哦)
Aug 20 PHP
Twig模板引擎用法入门教程
Jan 20 PHP
PHP表单数据写入MySQL数据库的代码
May 31 PHP
谈谈php对接芝麻信用踩的坑
Dec 01 PHP
Windows平台实现PHP连接SQL Server2008的方法
Jul 26 PHP
PHP getName()函数讲解
Feb 03 PHP
php实现大文件断点续传下载实例代码
Oct 01 PHP
Yii框架数据库查询、增加、删除操作示例
Oct 14 PHP
php使用redis的几种常见操作方式和用法示例
Feb 20 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
Aug 06 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产生随机字符串函数
2006/12/06 PHP
PHP 程序授权验证开发思路
2009/07/09 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
Laravel使用RabbitMQ的方法示例
2019/06/18 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
2020/12/30 PHP
js获取location.href的参数实例代码
2013/08/02 Javascript
JQuery中$.ajax()方法参数详解及应用
2013/12/12 Javascript
jquery和javascript中如何将一元素的内容赋给另一元素
2014/01/09 Javascript
jquery拖拽效果完整实例(附demo源码下载)
2016/01/14 Javascript
Javascript 动态改变imput type属性
2016/11/01 Javascript
浅析script标签中的defer与async属性
2016/11/30 Javascript
VSCode 配置React Native开发环境的方法
2017/12/27 Javascript
微信小程序中显示倒计时代码实例
2019/05/09 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
Python简单计算文件夹大小的方法
2015/07/14 Python
python爬虫实战之爬取京东商城实例教程
2017/04/24 Python
python实现数据写入excel表格
2018/03/25 Python
在python中bool函数的取值方法
2018/11/01 Python
Python中模块(Module)和包(Package)的区别详解
2019/08/07 Python
python数据处理之如何选取csv文件中某几行的数据
2019/09/02 Python
Python 脚本拉取 Docker 镜像问题
2019/11/10 Python
python文字转语音的实例代码分析
2019/11/12 Python
Python通过两个dataframe用for循环求笛卡尔积
2020/04/29 Python
为什么python比较流行
2020/06/19 Python
最新Python idle下载、安装与使用教程图文详解
2020/11/28 Python
摩托车和ATV零件、配件和服装的首选在线零售商:MotoSport
2017/12/22 全球购物
学生自我鉴定模板
2013/12/30 职场文书
三年级评语大全
2014/04/23 职场文书
环卫工人先进事迹材料
2014/06/02 职场文书
2014年客户经理工作总结
2014/11/20 职场文书
高中生自我评价范文2015
2015/03/03 职场文书
高一语文教学反思
2016/02/16 职场文书
创业计划书之熟食店
2019/10/16 职场文书
使用Redis实现秒杀功能的简单方法
2021/05/08 Redis
javascript条件式访问属性和箭头函数介绍
2021/11/17 Javascript