类似于ZF2中来自ZF1的getScriptPath的函数

时间:2012-10-29 11:19:52

标签: zend-framework2

我目前正在将我的ZF1应用程序映射到ZF2,并想知道ZF2中ZF1是否存在类似$this->view->getScriptPath()的功能?我已经花了半天时间,但没有找到一个好的解决方案。至少获得模块 basePath 或模块的模板文件夹也一样。

1 个答案:

答案 0 :(得分:1)

根据后续问题,您真正需要的是指定模板文件的路径。假设您正在使用默认的PhpRenderer,这实际上相对容易:您抓住解析器并解析路径。

如果您已经在视图脚本中,则以下内容应该有效:

$path = $this->resolver($templateName);

如果您在其他地方,则需要访问PhpRenderer或ViewResolver。如果您有权访问服务管理器,请拉取ViewResolver服务,并在其上调用resolve():

$resolver = $services->get('ViewResolver');
$path     = $resolver->resolve($templateName);

这比知道模块所在的位置要好,因为开发人员可能已选择覆盖应用程序中的模板;解析器会知道新位置的位置。