是否有更好的方法来获取应用程序模块类(zend框架)中的basepath

时间:2016-12-31 16:06:01

标签: php zend-framework zend-framework2

这是我到目前为止所做的:

class Module
{
     public function onBootstrap(MvcEvent $e)
     {
        $serviceLocator = $e->getApplication()->getServiceManager();
        $viewHelperManager = $serviceLocator->get('ViewHelperManager');
        $renderer = $viewHelperManager->getRenderer();
        $basePath = $renderer->basePath();
        // or $basePath = $renderer->basePath('en'); (passing string)
      }
 }

有没有更好的方法来获得基本路径?另请注意,我需要能够传递连接路径(不需要)($renderer->basePath('someurlpath')

1 个答案:

答案 0 :(得分:1)

获取基本目录或"当前工作目录"您应该使用PHP函数:get_cwd(),因为ZF2会在public/index.php中设置工作目录。请参阅ZF2骨架应用程序:index.php

chdir(dirname(__DIR__));

因此,在您的代码中,您可以执行以下操作:

$myPath = get_cwd() . "/public/folder";