Zend framework Zend Framework自动加载器-将驼峰大写转换为小写虚线

Zend framework Zend Framework自动加载器-将驼峰大写转换为小写虚线,zend-framework,layout,camelcasing,autoloader,Zend Framework,Layout,Camelcasing,Autoloader,我觉得Zend框架中的自动加载器有问题。我相信这不一定是自动加载器的错误行为,但可能是我遗漏了什么 目前我有一个应用程序路径,如下所示: /home/amurray/NetBeansProjects/MyProject/application 我在该路径下有两个布局,如下所示: APPLICATION_PATH . /layouts/scripts/layout.phtml APPLICATION_PATH . /layouts/scripts/layouthome.phtml etc..

我觉得Zend框架中的自动加载器有问题。我相信这不一定是自动加载器的错误行为,但可能是我遗漏了什么

目前我有一个应用程序路径,如下所示:

/home/amurray/NetBeansProjects/MyProject/application
我在该路径下有两个布局,如下所示:

APPLICATION_PATH . /layouts/scripts/layout.phtml
APPLICATION_PATH . /layouts/scripts/layouthome.phtml
etc..
现在,当我尝试切换控制器中的布局时:

$this->_helper->layout->setLayout('/home/amurray/NetBeansProjects/MyProject/application/layouts/scripts/layouthome');
-or-
$this->_helper->layout->setLayout(APPLICATION_PATH . '/layouts/scripts/layouthome');
我遇到一个错误,无法找到脚本,错误消息显示它正在将我的驼峰大小写目录名(在上面使用的两种方法中)转换为小写虚线目录名:

eg: NetBeansProjects = net-beans-projects
明显的原因是它无法找到路径。但是,如果我不尝试更改脚本,则默认布局(layout.phtml)工作正常(在ini配置中设置)

我认为是自动加载器导致了这个问题,但我不确定为什么默认设置会起作用,但切换会导致自动加载器更改目录。

您只需使用

$this->_helper->layout->setLayout('layout.phtml'); //no paths
并在application.ini(或bootstrap)中设置布局路径


您只需使用
$this->\u helper->layout->setLayout('layout.phtml')并在application.ini或中设置布局路径bootstrap@venimus我知道我有一个大脑冻结的时刻,我以前做过,我不知道为什么我要添加整个路径。如果你把这个写在答案里,我会给你打勾。
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/"