0

我是zend的新手。从 zend 站点下载了 zend 框架。现在我如何生成 zend 文件夹结构,如应用程序、bin、公共文件夹!?生成文件夹结构的最佳方法是什么?

谢谢。

4

2 回答 2

3

考虑一下你的应用结构,如果你想做一个有前端和后端(两个模块)甚至更多的应用,你最好试试 Zend 框架中的模块。我为此写了一篇文章,但没有详细说明。http://www.bang58.co.cc/blog/zend-framework-module-website-structure/

我想你可以查看这个以了解 Zend 框架的基本应用结构 - http://framework.zend.com/manual/en/learning.quickstart.intro.html

然后,您可以检查它以了解如何在您的应用程序中使用模块 - http://framework.zend.com/manual/en/zend.controller.modular.html

于 2012-05-08T11:16:57.503 回答
0

这真的取决于你的需求。正如 Tom 所写,当您的应用程序将比某些感觉控制器更复杂时,模块是一种方式。

我已经基于模块为我的项目创建了一个默认结构。这个想法是将基本控制器集中在默认模块中,并将其他所有控制器集中在特定模块中,考虑重用。

一些例子:

我的目录结构:

application
|--configs
   | config.ini
|--modules
| bootstrap.php
lib
|--MyLib
   |--locales
|--Zend
public
|--js
|--css
|--etc ...

非常喜欢汤姆的文章。config.ini 中有一些差异:

#My locales are in the MyLib dir
resources.translate.data = LIB_PATH "/Agana/locales"
resources.translate.scan = "directory"

#My default module has another name
resources.frontController.controllerDirectory = APPLICATION_PATH "/modules/aganacore/controllers"
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.frontController.prefixDefaultModule = true 
resources.frontController.defaultModule = aganacore

#My IndexController from default module redirect to this config variable
myproject.defaulturl = "dashboard"

在我的 IndexController 中,这是我的 indexAction:

public function indexAction() {
    // this call gets the myproject option in config.ini, please search how to get bootstrap options
    $options = Mylib_Util_Bootstrap::getOption('myproject');

    if (isset($options['defaulturl'])) {
        if (trim($options['defaulturl']) != '') {
            $this->_redirect($options['defaulturl']);
        }
    }
}

嗯,这是整个结构的一部分,但我相信它足以帮助你开始。

最好的祝福。

于 2012-05-14T13:45:59.477 回答