18

如何在操作中获取应用程序的根目录?

4

3 回答 3

27

ZF2 做的第一件事是通过改变当前目录chdir(dirname(__DIR__));

这意味着未来的每个包含都基于应用程序的根路径,而不是公用文件夹。或任何其他当前文件夹。

当然,这只适用于 PHP 文件。

如果你想手动定义根路径,你可以去/public/index.php添加一行像define('ROOT_PATH', dirname(__DIR__));

正如我之前所说,对于 INCLUDES,这不是必需的;)因为当涉及到 PHP 文件时,您总是在根文件夹中;)

于 2012-08-15T16:44:07.383 回答
8

getcwd() 最适合我,DIR返回模块根目录。在这种情况下用处不大

于 2014-05-10T12:14:58.867 回答
5

@Sam:我不太明白你的问题。基本上,当前路径等于 ZF2-Apps Root。[...] 你也可以随时升级,也可以通过 ../

不完全是。当您创建在多个应用程序中共享的模块时,例如。供应商中的文件上传模块,外部应用程序。您想将文件上传到应用程序子目录而不是共享模块:) 在这种情况下__DIR__等于模块路径而不是应用程序路径,这不是../一个好的解决方案;)

正如您所提到的,我喜欢 ROOT_PATH:

define('ROOT_PATH', dirname(__DIR__));

甚至更好:

getcwd()
于 2013-06-02T12:54:08.680 回答