`

php中获取文件file_a相对于文件file_b的目录

    博客分类:
  • PHP
 
阅读更多

 

 

/**
 * @desc 获取文件file_a相对于文件file_b的目录
 * 
 * @author Jihayang
 * @return string
 */
function getFileRelativePath($file_a, $file_b){
    #$file_a^$file_b 按位或运算(数学中称异或),将字符串转为16进制,相同为0,否则为1,
    #查找$file_a^$file_b里连续等于\x00直到不等于\x00后结束,并返回当前的位置,
    $pos = strspn($file_a^$file_b,"\x00");
    #输出多少个上级相同目录../
    $r_path = str_repeat('../', substr_count($file_a,'/',$pos));
    #输出相对路径
    $r_path .= substr($file_b,strrpos(substr($file_b,0,$pos), '/')+1);
    $r_path = dirname($r_path);
    return  $r_path;
}

$file_a='/a/66/bcdd/44/app/index.php';
$file_b='/a/66/bcdf/goods.php';

echo getFileRelativePath($file_a, $file_b);

 

分享到:
评论

相关推荐

    php dirname(__FILE__) 获取当前文件的绝对路径

    在PHP编程语言中,获取当前文件的绝对路径是一个非常实用的操作,尤其是使用魔术常量__FILE__和函数dirname()来实现。魔术常量__FILE__返回当前执行PHP脚本的完整路径和文件名,这个常量总是包含一个绝对路径,而不...

    PHP中判断文件存在使用is_file还是file_exists?

    即便是在文件不存在的情况下,is_file()相较于file_exists()也只是慢了一点点,这种差异小到可以忽略不计。 另外,测试程序还演示了is_dir()函数的使用。这个函数专门用来判断一个目录是否存在。和is_file()类似,...

    php getcwd与dirname(__FILE__)区别详解

    在PHP编程中,了解`getcwd()`和`dirname(__FILE__)`这两个函数的区别至关重要,因为它们经常被用来处理文件路径和目录操作。下面将详细解释这两个函数的功能、用途以及它们在不同情况下的行为差异。 首先,`getcwd...

    php file_exists 检查文件或目录是否存在的函数

    PHP中的file_exists函数是一个非常实用的内置函数,它能够检查指定的文件或目录是否存在。当文件或目录存在时,该函数会返回一个布尔值TRUE;如果不存在,则返回FALSE。这个函数不仅可以在本地服务器上使用,而且还...

    php file_put_contents()功能函数(集成了fopen、fwrite、fclose)

    - 如果文件路径是相对路径,它会相对于当前工作目录进行查找,因此需要确保路径正确。 - 当使用 `FILE_APPEND` 时,即使设置了 `LOCK_EX`,也可能出现多个进程同时写入的情况,因为锁定只在写入时生效。 总之,`...

    PHP中set_include_path()函数相关用法分析_.docx

    这使得开发者能够获取到文件的实际位置,这对于确定相对于当前文件的其他路径至关重要。 `dirname()`函数则用来获取一个路径中的目录部分。例如,如果`__FILE__`的值是`/var/www/html/index.php`,那么`dirname(__...

    php遍历目录和文件列表的类.zip

    3. `operateWithPath($relativePath)`:此方法允许用户根据相对于当前目录的路径执行某些操作,如移动、复制或删除文件。这通常需要结合`chdir()`或`realpath()`函数来处理相对路径。 4. `operateWithAbsolutePath...

    php遍历目录和文件列表的类

    参数`$function`可以是一个回调函数,`$path`是相对于类中存储的目录的路径。这样设计可以方便地对目录中的每个文件或子目录进行自定义操作,如复制、移动、删除等。 6. `closeDir()`: 关闭目录句柄,释放资源。在...

    PHP程序设计-3期(KC016) 2.9.4 dirname函数拓展知识.doc

    basename(__FILE__)`将返回当前文件所在目录下的`f`子目录中的文件,文件名与当前文件相同。这种组合可以用于动态地引用或操作与当前文件相关的其他文件。 最后,`require`语句用于在PHP中包含并执行指定的文件。...

    php is_file 判断给定文件名是否为一个正常的文件

    3. 路径问题:确保提供的文件路径是绝对路径或相对于脚本运行的目录的相对路径。 4. 网络文件系统:对于通过网络共享的文件,`is_file()` 可能无法正确工作,因为它依赖于底层的文件系统支持。 ### 总结 `is_file...

    PHP 获取视频video音频audio详情【时长、大小、尺寸、格式等】

    在PHP开发中,有时我们需要获取视频或音频文件的元数据,比如时长、大小、分辨率、格式等。这些信息对于视频处理、播放器构建或者多媒体数据管理至关重要。本篇文章将详细讲解如何使用PHP来获取这些关键信息,并介绍...

    PHP获取当前url路径的函数及服务器变量QUERY_STRING、REQUEST_URI

    这通常是指执行当前脚本的文件的相对路径,相对于Web服务器的文档根目录。 **示例:** - 对于`http://www.biuuu.com/index.php?p=222&q=biuuu`,`$_SERVER["SCRIPT_NAME"]`的值为`"/index.php"`。 #### 4. $_...

    php打包文件zip

    对于每个文件,我们计算其相对于目标文件夹的相对路径,并使用`addFile`方法将其添加到ZIP文件中。最后,我们关闭ZIP文件,完成打包过程。 这个过程可以轻松地适应不同的需求,例如,你可能需要在打包前检查文件...

    正确使用php读取文件的方法汇总共8页.pdf.zip

    7. **file_put_contents()**:与file_get_contents()相对应,它用于写入文件。如果文件已存在,可以覆盖或者追加内容。 在实际应用中,根据具体需求选择合适的方法。在处理文件时,务必注意错误处理、权限检查和...

    大名鼎鼎SWFUpload- Flash+JS 上传

     file_upload_limit : 10, 限定用户一次性最多上传多少个文件,在上传过程中,该数字会累加,如果设置为“0”,则表示没有限制  file_queue_limit : 2, 上传队列数量限制,该项通常不需设置,会根据file_upload_...

    PHP获取路径和目录的方法总结【必看篇】

    文档根目录通常在服务器配置文件中定义,是相对于web服务器的根目录。例如,在Apache服务器中,这个值是由DocumentRoot指令设定的。 最后,我们可以使用PHP内置函数来获取和操作文件路径: 1. dirname():这个函数...

    PHP获取基础汇率(实时版)

    基础汇率是指一个国家的货币相对于另一种主要货币的官方或市场决定的价值。在金融领域,这通常是通过访问第三方数据接口API来实现的。这里,我们关注的是一个名为"rate.php"的文件,它可能是实现这个功能的核心代码...

    PHP文件操作——记忆卡

    - `file_exists()`:检查文件或目录是否存在。 - `fileatime()`:文件的上次访问时间。 - `filemtime()`:文件的上次修改时间。 - `filesize()`:返回文件的大小。 - `filetype()`:返回文件的类型。 - `is_...

    PHP文件上传类实例详解

    `ROOT_PATH`是网站的根目录,通常通过`dirname(__FILE__)`获取,而`UPDIR`指定了上传文件的主目录。这些常量可以在网站的配置文件中定义,以便根据需要进行调整。 `FileUpload`类包含以下主要属性: 1. `$error`:...

Global site tag (gtag.js) - Google Analytics