Zend Framework 2配置中的自定义路径

时间:2013-09-05 06:45:06

标签: configuration zend-framework2 relative-path

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应用程序放在具有不同文件夹结构的实时服务器上,它应该仍然有效。

有没有办法声明相对路径或类似的东西? 很多感谢提前

2 个答案:

答案 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将当前工作目录定义为项目的根目录。