php dirname(__FILE__) 路径问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php dirname(__FILE__) 路径问题相关的知识,希望对你有一定的参考价值。

当前绝对路径为 E:\wamp\www\1.0.5\unipei_help\protected\config
怎样获取到 E:\wamp\www目录
dirname(dirname(dirname(dirname(__FILE__))))太烦了,想换个写法
用dirname(__FILE__).'/../../../../' 代码php不能识别

php高手们帮个忙,谢谢
因为当前php文件路径为E:\wamp\www\1.0.5\unipei_help\protected\config

我想要获取这个文件的相对路径

参考技术A

还没解决么?我来~

<?php
    /**
     * 假设:
     * 
     * 设置文件E:\\wamp\\www\\1.0.5\\unipei_help\\protected\\config\\config.php
     * 项目目录E:\\wamp\\www\\1.0.5\\
     * WWW目录E:\\wamp\\www\\
     * 
     * 当前PHP脚本是E:\\wamp\\www\\1.0.5\\upload.php
     */

    /* 在项目根目录下,往上跳一层 */
    $tmp_wwwpath = dirname(__FILE__) . '/../'; 
    $tmp_project_path = dirname(__FILE__);
    $jueDuiWWWRoot = realpath($tmp_wwwpath);      /* 值为E:\\wamp\\www\\ */
    $jueDuiProRoot = realpath($tmp_project_path); /* 值为E:\\wamp\\www\\1.0.5\\ */
    
    $jueDui_to_config=$jueDuiProRoot.'unipei_help\\protected\\config\\config.php';
    
    /* 相对路径,是相对目前的脚本文件来说的 */
    $xiangdui_to_config = '.\\unipei_help\\protected\\config\\config.php';
    
    
    if(!is_file($xiangdui_to_config))
        die('检查目前脚本的位置,修改$xiangdui_to_config');
    
    
    
    
    
    
    // 华丽丽的分割线~~~~~~

本回答被提问者采纳
参考技术B 首先你的项目名字或者路径不可能总是换吧
substr(__FILE__, 0, 11); 第3个参数 你完全可以按照自己的需求改变啊
及可以获取到E:\wamp\www目录

要相对config 路径 直接

dirname(__FILE__).'/../../../../' ; 测试过来是没有问题的.
参考技术C <?php
//获取php运行的根目录
echo $_SERVER['DOCUMENT_ROOT'];
?>

追问

1.0.5是个项目,上传服务器时有可能不是www目录下,所以最好用相对路径
还有更好的么

还是谢谢啦

追答

相对路径的话,可以这样写

//这个符号就表示当前文件所在的目录,根据这个来跳文件夹
./


当前文件夹为
E:\wamp\www\1.0.5\unipei_help\protected\config

要获取
E:\wamp\www
写法为
./../../../../
就可以跳转到www文件夹下,还可向外继续跳

不过如果文件和脚本文件所在的文件夹不在同一文件夹,请尽量使用绝对路径,保证文件位置不出错

以上是关于php dirname(__FILE__) 路径问题的主要内容,如果未能解决你的问题,请参考以下文章

PHP路径相关 dirname,realpath,__FILE__

dirname(__FILE__) 返回“/nfs”路径

php语言:require_once(dirname(__FILE__)."/./config_uc.php");讲解

php开发中,取绝对路径$_Site_Roots = substr(dirname(__FILE__), 0, -4)

****php:require_once(dirname(__FILE__)."/./config_uc.php");

__FILE__和__DIR__的用法