Php 将现有Zend Action控制器移动到模块中

Php 将现有Zend Action控制器移动到模块中,php,zend-framework,controller,Php,Zend Framework,Controller,我开始开发一个管理Zend PHP应用程序,但后来在项目中被告知,同一个应用程序需要支持面向公众的接口。我想将我当前的控制器和视图移动到一个单独的模块中,我不确定最好的方法 如果我只是使用zf创建模块并将我的所有资产复制到新模块中,并尝试导航到模块中的任何操作,Zend似乎无法找到它们,因为它会引发以下错误: Next exception 'Zend_Controller_Exception' with message 'Invalid controller specified (error)#

我开始开发一个管理Zend PHP应用程序,但后来在项目中被告知,同一个应用程序需要支持面向公众的接口。我想将我当前的控制器和视图移动到一个单独的模块中,我不确定最好的方法

如果我只是使用zf创建模块并将我的所有资产复制到新模块中,并尝试导航到模块中的任何操作,Zend似乎无法找到它们,因为它会引发以下错误:

Next exception 'Zend_Controller_Exception' with message 'Invalid controller specified (error)#0 /opt/zf/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#1 /opt/zf/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
#2 /opt/z in /opt/zf/library/Zend/Controller/Plugin/Broker.php on line 336

我唯一的猜测是,我正在破坏Zend使用zf create为新控制器设置的默认路由,但我对Zend来说非常陌生,无法找到有关此的任何信息。

您必须在控制器前面加上模块名:
{ModuleName}{ControllerName}controller
(如果这不是您的默认模块)。但是,文件名保持不变。
.zfproject.xml
不会影响您的应用程序。此文件仅包含zf工具的信息。

在使用zf工具生成新控制器而不是仅复制脚本后,实际实现了这一点。我觉得自己很蠢,这让我想起了伪名称空间的东西。。。否则,模块控制器之间可能存在命名冲突。另外,我觉得
.zfproject.xml
仅用于zf工具,但感谢您的确认。