使用PHP求两个文件的相对路径
function compare($ph1,$ph2){
$ret = '';
$_f1Arr = explode("/",$ph1);
$_f2Arr = explode("/",$ph2);
$f1 = array_pop($_f1Arr);
$f2 = array_pop($_f2Arr);
for($i=0;$i<count($_f1Arr);$i++){
if($_f1Arr[$i] !== $_f2Arr[$i])
break;
}
for($j= $i-1;$j<count($_f1Arr);$j++){
$ret .= "../";
}
for($i-1;$i<count($_f2Arr);$i++){
$ret .= $_f2Arr[$i].'/';
}
return $ret.$f2;
}
$file1 = "aaa/ddd/ccc/ddd/test/a.js";
$file2 = "aaa/ddd/ccc/ddd/test/b.js";
echo compare($file1,$file2);
?>
B对于A的相对路径。。。
相关推荐
-
php获取文件夹路径内的图片以及分页显示示例
复制代码 代码如下: <div style="width: 90%; margin: 10px auto; border: 1px solid #ccc; text-align: center"> <?php $page=isset($_GET['page'])?$_GET['page']:0;//从零开始 $imgnums = 10; //每页显示的图片数 $path="upload"; //图片保存的目录
-
PHP上传文件时自动分配路径的方法
本文实例讲述了PHP上传文件时自动分配路径的方法.分享给大家供大家参考.具体分析如下: 网站上传文件时,如果是小的企业站,放在一个目录还没问题,当网站大了,上传的文件多了,我们就不能放在同一个目录了,这里我们就来讲讲用PHP自动给上传的文件分配路径的方法. PHP分配上传文件的路径实例 主要程序片段如下: 复制代码 代码如下: <?php /*数字方式分配路径*/ function allotPath($id, $extend='jpg') { $folders = st
-
php从完整文件路径中分离文件目录和文件名的方法
本文实例讲述了php从完整文件路径中分离文件目录和文件名的方法.分享给大家供大家参考.具体分析如下: basename()函数用于从路径中获得文件名 dirname()函数用于从路径中获得文件目录 <?php $full_name = 'c:\wamp\php\php.ini'; $base = basename($full_name); // $base is "php.ini" $dir = dirname($full_name); // $dir is "c:\w
-
查找php配置文件php.ini所在路径的二种方法
通常php.ini的位置在: 复制代码 代码如下: /etc目录下或/usr/local/lib目录下. 如果你还是找不到php.ini或者找到了php.ini修改后不生效(其实是没找对),请使用如下办法: 1.新建php文件,写入如下代码 复制代码 代码如下: <?phpecho phpinfo();[code] 然后在浏览器访问该页面,搜索php.ini, 2.执行,(需要修改php为你自己的路径)[code]/usr/local/php/bin/php --ini 会显示php.ini所在
-
PHP获取文件绝对路径的代码(上一级目录)
PHP获取文件绝对路径 复制代码 代码如下: <?php echo __FILE__ ; // 取得当前文件的绝对地址,结果:D:\www\test.php echo dirname(__FILE__); // 取得当前文件所在的绝对目录,结果:D:\www\ echo dirname(dirname(__FILE__)); //取得当前文件的上一层目录名,结果:D:\ ?> chdir() 函数 定义和用法 chdir() 函数把当前的目录改变为指定的目录. 若成功,则该函数返回 true,
-
PHP pathinfo()获得文件的路径、名称等信息说明
PHP pathinfo() 函数 定义和用法 pathinfo() 函数以数组或字符串的形式返回关于文件路径的信息. 返回的数组元素如下: [dirname]:返回文件路径中的目录部分 [basename]:返回文件路径中文件名的部分 [extension]:返回文件路径中文件的类型的部分 语法 pathinfo(path,options) 参数 描述 path 必需.规定要检查的路径. options 可选.规定要返回的数组元素.默认是 all. 可能的值: PATHINFO_DIRNAME
-
php计算两个文件相对路径的方法
本文实例讲述了php计算两个文件相对路径的方法.分享给大家供大家参考.具体如下: 一.问题: 写一个php函数算出两个文件的相对路径.例如$a="/a/b/c/d/e.php"; $b="/a/b/12/34/c.php",B相对于A的相对路径是什么? 二.解决方法: <?php /** * 求$b相对于$a的相对路径 * @param string $a * @param string $b * @return string */ function getR
-
PHP获取文件相对路径的方法
本文实例讲述了PHP获取文件相对路径的方法.分享给大家供大家参考.具体实现方法如下: <?php $a = '/a/b/c/d/e.php'; $b = '/a/b/12/34/c.php'; //../../12/34/c.php echo getRelativelyPath($a,$b); //求$b相对于$a的相对路径 function getRelativelyPath($a,$b){ $a=explode('/',$a); $b=explode('/',$b); var_dump($a
-
使用PHP求两个文件的相对路径
复制代码 代码如下: function compare($ph1,$ph2){ $ret = ''; $_f1Arr = explode("/",$ph1); $_f2Arr = explode("/",$ph2); $f1 = array_pop($_f1Arr); $f2 = array_pop($_f2Arr); for($i=0;$i<count($_f1Arr);$i++){ if($_f1Arr[$i]
-
php求两个目录的相对路径示例(php获取相对路径)
求两个目录的相对路径,不限制路径深度 复制代码 代码如下: /** * 输出$b相对于$a的相对路径($a) * 不限限制路径深度,没有做什么优化,只是实现功能 */function getPath($a, $b){ $aArr = explode('/', dirname($a)); $bArr = explode('/', dirname($b)); $aLen = count($aArr); $bLen = count($bArr); $len = max($aLen, $bLen); $
-
Python实现求两个csv文件交集的方法
本文实例讲述了Python实现求两个csv文件交集的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python rd3 = open('data_17_17_2.csv') base = open('data_17_17_3.csv') wr3 = open('delNoBuyed3DayAndStoreAndInCar4.5.2.csv','w+') bsData = base.readlines() i = 1 for key in rd3: if key in bs
-
java实现字符串匹配求两个字符串的最大公共子串
本文实例讲述了java实现求两个字符串最大公共子串的方法.分享给大家供大家参考,具体如下: 最近在项目工作中有一个关于文本对比的需求,经过这段时间的学习,总结了这篇博客内容:求两个字符串的最大公共子串. 算法思想:基于图计算两字符串的公共子串.具体算法思想参照下图: 输入字符串S1:achmacmh 输入字符串S2:macham 第a步,是将字符串s1,s2分别按字节拆分,构成一个二维数组: 二维数组中的值如b所示,比如第一行第一列的值表示字符串s2和s1的第一个字节是否相等,若相等就是1
-
在QT5中实现求两个输入值的和并输出(实例)
1.在UI设计界面放置两个输入lineEdit.一个输出TextBrowser和一个PushButton(用以按键求和), 如图 2.打开.h文件,在类里面添加槽函数的声明代码,如图 : 3.打开.cpp文件,在文件最下面编写槽函数代码,如图 : 由于需要用到QString类型转基本数据类型(int),因此在头文件添加#include <QString> 4.点击运行,在弹出的程序窗口中输入两个数值并点击求和即可,如图 以上这篇在QT5中实现求两个输入值的和并输出(实例)就是小编分享给大家的
-
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
本文实例讲述了Python基于递归和非递归算法求两个数最大公约数.最小公倍数.分享给大家供大家参考,具体如下: 最大公约数和最小公倍数的概念大家都很熟悉了,在这里就不多说了,今天这个是因为做题的时候遇到了所以就写下来作为记录,也希望帮到别人,下面是代码: #!/usr/bin/env python #coding:utf-8 from fractions import gcd #非递归实现 def gcd_test_one(a, b): if a!=0 and b!=0: if a>b: a,
-
.NET CORE中比较两个文件内容是否相同的最快方法
前言 最近项目有个需求,需要比较两个任意大小文件的内容是否相同,要求如下: 项目是.NET CORE,所以使用C#进行编写比较方法 文件大小任意,所以不能将文件内容全部读入到内存中进行比较(更专业点说,需要使用非缓存的比较方式) 不依赖第三方库 越快越好 为了选出最优的解决方案,我搭建了一个简单的命令行工程,准备了两个大小为912MB的文件,并且这两个文件内容完全相同.在本文的最后,你可以看到该工程的Main方法的代码. 下面我们开始尝试各个比较方法,选出最优的解决方案: 比较两个文件是否完全相
-
Python自定义函数实现求两个数最大公约数、最小公倍数示例
本文实例讲述了Python自定义函数实现求两个数最大公约数.最小公倍数.分享给大家供大家参考,具体如下: 1. 求最小公倍数的算法: 最小公倍数 = 两个整数的乘积 / 最大公约数 所以我们首先要求出两个整数的最大公约数, 求两个数的最大公约数思路如下: 2. 求最大公约数算法: ① 整数A对整数B进行取整, 余数用整数C来表示 举例: C = A % B ② 如果C等于0,则C就是整数A和整数B的最大公约数 ③ 如果C不等于0, 将B赋值给A, 将C赋值给B ,然后进行 1, 2
-
Python实现比较两个文件夹中代码变化的方法
本文实例讲述了Python实现比较两个文件夹中代码变化的方法.分享给大家供大家参考.具体如下: 这里将修改代码后的目录与原始目录做对比,罗列出新增的代码文件,以及修改过的代码文件 # -*- coding: utf-8 -*- import os; folderA = "F:\\Projects\\FreeImageV3_14_1\\".lower(); folderB = u"E:\\Software\\图像解码库\\FreeImage3141\\FreeImage\\&q
随机推荐
- Microsoft Sql server2005的安装步骤图文详解及常见问题解决方案
- destoon切换城市后实现logo旁边显示地区名称的方法
- Javascript继承机制的设计思想分享
- PHP+FLASH实现上传文件进度条相关文件 下载
- 基于MVC4+EasyUI的Web开发框架之附件上传组件uploadify的使用
- asp.net中利用ashx实现图片防盗链代码
- 利用ASP.NET MVC和Bootstrap快速搭建个人博客之文章打赏功能(六)
- PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
- C#递归遍历窗体所有textbox控件并设置textbox事件的方法
- C#判断当前程序是否通过管理员运行的方法
- 原生js和jquery实现图片轮播特效
- MySQL与Mongo简单的查询实例代码
- jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
- jquery通过select列表选择框对表格数据进行过滤示例
- Jquery为a标签的href赋值实现代码
- 禁止F5等快捷键的JS代码
- C#实现.net页面之间传值传参方法汇总
- Android Studio导入项目非常慢的解决方法
- SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
- 清除系统log的方法附批处理文件