php计算两个文件夹的相对路径

<?php
include ‘../../c/e/one.php‘;
echo "\n";
echo ‘this is two‘;
echo "\n";

$a = "/a/b/c/d/e.php";
$b = "/a/b/12/34/c.php";
$cnta = strlen($a);
$cntb = strlen($b);

$cnt = max($cnta,$cntb);
echo $cnt,"\n";

for($i=1;$i<$cnt;$i++){
    $str_a = substr($a,0,$i);
    $str_b = substr($b,0,$i);
    if($str_a == $str_b){
        $base = $str_a;
    }else{
        break;
    }
}
echo $base,"\n";
$start = strlen($base);
$a_arr = explode(‘/‘,substr($a,$start));
$a_c_cnt = count($a_arr)-1;

$path = ‘‘;
for($i=0;$i<$a_c_cnt;$i++){
    $path .= "../";
}
$path .= substr($a,$start);
echo $path,"\n";

$b_arr = explode(‘/‘,substr($b,$start));
$b_c_cnt = count($b_arr)-1;
$path = ‘‘;
for($i=0;$i<$b_c_cnt;$i++){
    $path .= "../";
}
$path .= substr($b,$start);
echo $path,"\n";
时间: 2024-10-12 20:23:37

php计算两个文件夹的相对路径的相关文章

使用JAVA实现比较两个文件夹下的文件新增和修改情况,并复制到新的目录(实现增量更新项目)

- 0x00 前言 之前工作的时候,经常会有客户提交BUG或者新增一个功能等需求.于是我就会在我本地修改代码,然后再打包替换客户的项目.比较麻烦的是,每次更新都需要去SVN看看都改了哪些文件,新增了哪些文件,一个一个去找,然后打包,给客户更新,有些时候一不小心就漏了或者搞错了,非常的烦.其实我一直都想做的事情就是,写一个程序,让程序去实现对比新旧两个项目,然后把新的项目多出来的文件或者变更过的文件复制出来,这样就能省去我好多工作,主要是不用人工一个个的去比对.. 太烦了. - 0x01 思路 1

一个分区挂载到两个文件夹怎样删除还有一个

有时候我们会不小心挂载一个分区到两个文件夹以下,我们能够通过一下方式删除: sudo vi /etc/fstab ,删除/dev/xvdb1 /mnt ext3 defaults 0 0 这行即可 不会出现什么问题的,留着也没事

IO练习 两个文件夹进行copy(含子目录)

1 //从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)拷贝到另一个文件夹中 2 @Test 3 public void t6(){ 4 //1) 接受两个文件夹路径 5 //1.创建一个 字符缓冲流 6 7 BufferedReader br = null; 8 try { 9 br = new BufferedReader(new InputStreamReader(System.in)); 10 System.out.println("请输入第一个文件夹路径"); 11

Path,Files巩固,题目:从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)拷贝到另一个文件夹中

这个题目用传统的File,InputStream可以做,但是如果用Files,Path类做,虽然思路上会困难一些,但是代码简洁了很多,以下是代码: import java.io.IOException; import java.nio.file.FileVisitResult; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.Simple

Java开发环境部署2.下载安装java jdk 2.1下载与安装 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载完后开始安装。注意,安装的路径不能变!!!反正笔者前两次改了安装路径都装不成。 JDK默认安装成功后,会在系统目录下出现两个文件夹,一个代表jdk,一个代表jre。

操作系统:win10 64biteclipse版本:Eclipse Mars (4.5),Eclipse IDE for Java EE DeveloperJava JDK版本:jdk-7u79-windows-x64SDK版本:24.4.1版ADT版本:23.0.4版 1.下载安装java jdk1.1下载与安装 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html JDK默认安装成功后,会在系统目录下出

计算两个文件相对路径

/**计算两个文件相对路径 */function relative_path($path1,$path2) {    $arr1 = explode('/',dirname($path1));    $arr2 = explode('/',dirname($path2));    for($i=0,$len = count($arr2);$i < $len;$i++) {        if($arr1[$i] != $arr2[$i]) {            break;        }

从键盘接收两个文件夹路径,把其中一个文件夹(包含内容),拷贝到另一个文件夹中

package cn.it.text; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.Scanner; /* * 1.从键盘接收两个文件夹路径,把其中一个文件夹(包含内容) * 拷贝到另一个文件

php 两个文件之间的相对路径的计算方法

php 两个文件之间的相对路径的计算方法 比如: 文件A 的路径是 /home/web/lib/img/cache.php 文件B的路径是 /home/web/api/img/show.php 那么.文件A相对于文件B的路径是 ../../lib/img/cache.php,即文件B 訪问 文件A的相对路径. function getRelativePath <?php /** 计算path1 相对于 path2 的路径,即在path2引用paht1的相对路径 * @param String $

VC中文件(夹)目录与路径操作原理与代码实现

***********************************************声明************************************************************************************* 原创作品,出自 "晓风残月xj" 博客,欢迎转载,转载时请务必注明出处(http://blog.csdn.net/xiaofengcanyuexj). 由于各种原因,可能存在诸多不足,欢迎斧正! ************