使用PHP计算两个路径的相对路径


Posted in PHP onJune 14, 2013
<html>
     <body>
         <?php
             function relativePath($aPath, $bPath) {
                 $aArr = explode('/', $aPath);    //explode函数用于切分字符串,返回切分后的数组,此处用'/'切分字符串
                 $bArr = explode('/', $bPath);
                 $aDiffToB = array_diff_assoc($aArr, $bArr);    //array_diff_assoc()用于获取A数组与B数组之间元素的差集,Key和Value都不相同视为不同元素,此处返回在A数组中且与B数组不相同的元素
                 $count = count($aDiffToB);                 $path = '';
                 for($i = 0; $i < $count - 1; $i++){
                     $path .= '../'; 
                 }
                 $path .= implode('/', $aDiffToB);    //implode()用于使用指定字符串连接数组元素,此处返回用'/'连接数组元素后的字符串
                 return $path;
             }
             echo relativePath('/a/b/c/d/a.php', '/a/b/1/2/b.php');
         ?>
     </body>
 </html>

页面输出
. ./. ./c/d/a.php
PHP 相关文章推荐
PHP调用三种数据库的方法(3)
Oct 09 PHP
人大复印资料处理程序_输入篇
Oct 09 PHP
我的论坛源代码(六)
Oct 09 PHP
source.php查看源文件
Dec 09 PHP
浅析php fwrite写入txt文件的时候用 \r\n不能换行的问题
Aug 06 PHP
微信营销平台系统?刮刮乐的开发
Jun 10 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
Aug 20 PHP
CodeIgniter配置之autoload.php自动加载用法分析
Jan 20 PHP
Yii视图CGridView实现操作按钮定义地址示例
Jul 14 PHP
php四种定界符详解
Feb 16 PHP
php判断str字符串是否是xml格式数据的方法示例
Jul 26 PHP
php 使用html5 XHR2实现上传文件与进度显示功能示例
Mar 03 PHP
深入解析PHP的引用计数机制
Jun 14 #PHP
深入解析PHP垃圾回收机制对内存泄露的处理
Jun 14 #PHP
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
Jun 14 #PHP
解析php中两种缩放图片的函数,为图片添加水印
Jun 14 #PHP
PHP操作Memcache实例介绍
Jun 14 #PHP
解析PHP处理换行符的问题 \r\n
Jun 13 #PHP
基于PHP5魔术常量与魔术方法的详解
Jun 13 #PHP
You might like
PHP Curl多线程原理实例详解
2013/11/06 PHP
php面向对象的用户登录身份验证
2017/06/08 PHP
PHP共享内存使用与信号控制实例分析
2018/05/09 PHP
一文看懂PHP进程管理器php-fpm
2020/06/01 PHP
CheckBox 如何实现全选?
2006/06/23 Javascript
一个简单的javascript类定义例子
2009/09/12 Javascript
jquery EasyUI的formatter格式化函数代码
2011/01/12 Javascript
使用js完成节点的增删改复制等的操作
2014/01/02 Javascript
JavaScript实现的购物车效果可以运用在好多地方
2014/05/09 Javascript
avascript中的自执行匿名函数应用示例
2014/09/15 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
2016/06/12 Javascript
微信小程序  网络请求API详解
2016/10/25 Javascript
微信JS-SDK自定义分享功能实例详解【分享给朋友/分享到朋友圈】
2016/11/25 Javascript
微信小程序实现列表页的点赞和取消点赞功能
2018/11/02 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
Vue框架下引入ActiveX控件的问题解决
2019/03/25 Javascript
详解Python中DOM方法的动态性
2015/04/11 Python
详解使用 pyenv 管理多个版本 python 环境
2017/10/19 Python
Python3之读取连接过的网络并定位的方法
2018/04/22 Python
python 字典修改键(key)的几种方法
2018/08/10 Python
Django命名URL和反向解析URL实现解析
2019/08/09 Python
简单了解Django项目应用创建过程
2020/07/06 Python
灵活运用CSS3特性绘制简易版围棋效果
2016/09/28 HTML / CSS
亚瑟士美国官网:ASICS美国
2017/02/01 全球购物
Brookstone美国官网:独特新奇产品
2017/03/04 全球购物
小学开学典礼主持词
2014/03/19 职场文书
公司户外活动总结
2014/07/04 职场文书
摄影专业毕业生求职信
2014/08/05 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书
2015年社区流动人口工作总结
2015/05/12 职场文书
2015大学生入党个人自传
2015/06/26 职场文书
利用Python+OpenCV三步去除水印
2021/05/28 Python
一篇带你入门Java垃圾回收器
2021/06/16 Java/Android
CSS作用域(样式分割)的使用汇总
2021/11/07 HTML / CSS