PHP动态获取根目录绝对路径


PHP obtain root dir absolute path dynamically

我是一个php新手。

我想创建一个php配置文件,在那里设置我的项目目录结构的绝对路径。我的配置文件位于'private/class'目录中,它将包含在'root'和私有目录文件中。

项目目录结构为

class
img
photo
etc
private/class
private/photo
private/photo/thumb
private/etc
为了获得文件所在的绝对路径,我使用magic php常量DIR
define('MAINPATH', __DIR__ );
这部剧

/var/www/projectname/private/class

,如果我在index.php或私有/index.php中包含配置文件,则该变量保持不变。

现在我的问题是从主路径开始寻找另一条路径。通常我用realpath,但在这种情况下,我不认为会很好。我试过了

define('PHOTOPATH', __DIR__ . '../photo');
define('PHOTOPATH', realpath ( __DIR__ . '../photo'));
这些节目

1 - /var/www/projectname/private/class../photo
2 - nothing

我怎么能这么做?谢谢你

您只需要在附加路径的其余部分之前附加PATH分隔符(/)。

define('PHOTOPATH', realpath ( __DIR__ . '/../photo'));
                                         ^
                                         |
                                         +- notice here the '/' is added

您可以使用$_SERVER['DOCUMENT_ROOT']。