Zend Framework模块目录结构
程序员文章站
2022-03-24 14:37:02
...
在使用Zend Framework编写应用项目时,有时会依据项目需要将代码划分为多个不同的模块,以方便日后的维护。如下图所示
我们需将在Index.php文件中添加每个模块的控制器所在目录,之后就可以通过类似于http://localhost:8080/ZF_Test/public/purchase/的URL进行访问(ZF_Test是用于测试ZF代码的目录,public则是对外发布的目录)。
- $frontController->setControllerDirectory(
- array(
- 'admin'=>'../application/admin/controllers',
- 'default'=>'../application/default/controllers',
- 'purchase'=>'../application/purchase/controllers',
- 'query'=>'../application/query/controllers',
- 'report'=>'../application/report/controllers'
- )
- );
可是在实际访问中却出现了错误,提示我找不到Purchase_IndexControl控制器?我分明在purchase/controllers/目录下存放了IndexControll.php文件,且语法正确的呀,purchase/views/script/index/index.phtml文件也存在的呀,可为什么还是出现错误呢?仔细查询错误提示发现控制器类名不是“IndexController”而是“Purchase_IndexController”,多了一个前缀,我试着修改了purchase/controllers/目录下存放了IndexControll.php文件中定义的控制器类名——加上了模块名称,然后重新访问,这次成功了!!
重新阅读ZF的帮助文档,知道了问题的实质了。原来ZF会用每个模块的模块名作为控制器类的前缀,默认的模块会在控制器类前加上“Default_”作为前缀的。所以在编写非默认模块的控制器类时一定要注意其名称,必须是以“模块名_”作为前缀。默认模块的控制器类命名可以以“Default_”作为前缀,也可以省略不写。
版权声明:本文为博主原创文章,未经博主允许不得转载。
推荐阅读
-
zend Framework中的Layout(模块化得布局)详解
-
zend framework多模块多布局配置
-
spring framework体系结构及模块jar依赖关系详解
-
zend framework多模块多布局配置
-
OFBiz进阶--OFBiz开发之[component]-模块目录结构
-
zend framework一个模块多个控制器的有关问题
-
zend framework多模块多布局配置_php技巧
-
spring framework体系结构及模块jar依赖关系详解
-
zend Framework中的Layout(模块化得布局)详解
-
zend framework一个模块多个控制器的有关问题