Hello Stack Overflow社区
我的zend framework 2模块中的自定义路径存在一些问题。 我已将以下代码添加到我的module.config.php:
// custom configuration
'custom' => array(
'paths' => array(
'pickUpDir' => '/var/www/beam/public/in/',
'errorDir' => '/var/www/beam/public/error/',
'temporaryDir' => '/var/www/beam/module/Beam/temp/',
'archiveDir' => '/var/www/beam/module/Beam/archive/'
)
),
现在这在我的虚拟开发服务器上工作正常,但我希望它能够通用,这意味着如果我将Zend Framework应用程序放在具有不同文件夹结构的实时服务器上,它应该仍然有效。
有没有办法声明相对路径或类似的东西? 很多感谢提前
答案 0 :(得分:3)
魔术常量__DIR__
将返回当前目录,该目录应为/..../Yourmodel/config/
。
从那以后你就可以做到:
'custom' => array(
'paths' => array(
'pickUpDir' => __DIR__ . '/../../public/in/',
'errorDir' => __DIR__ . '/../../public/error/',
//etc
)
),
答案 1 :(得分:1)
除了cptnk的答案(也是有效的)之外,您还可以使用get_cwd()函数返回webapp的根目录,以便您可以编写类似
的stg'custom' => array(
'paths' => array(
'pickUpDir' => get_cwd() . '/public/in/',
'errorDir' => get_cwd() . '/public/error/',
//etc
)
)
因为ZF2将当前工作目录定义为项目的根目录。