Php 在zf2中创建模块的过程是否可以简化?

Php 在zf2中创建模块的过程是否可以简化?,php,zend-framework2,Php,Zend Framework2,我正在看一些教程,要创建一个模块,您必须修改一组配置文件,以使控制器、模型和视图正常工作。我认为这是不可能的尝试,并记住它所有或理解它是我在做什么。有没有其他方法可以为我创建这些?这样我就不必每次创建控制器或模块时都写出来。老实说,我不知道这有多快。我来自codeigniter的背景,因此做出这个切换让我多次试图理解它。我已经使用ZF2几个月了,我发现编写一个类来为您生成该配置非常有用 没有工具可以帮你做到这一点。但是,如果您遵循以下方法,您应该很快就正确了: class Configurato

我正在看一些教程,要创建一个模块,您必须修改一组配置文件,以使控制器、模型和视图正常工作。我认为这是不可能的尝试,并记住它所有或理解它是我在做什么。有没有其他方法可以为我创建这些?这样我就不必每次创建控制器或模块时都写出来。老实说,我不知道这有多快。我来自codeigniter的背景,因此做出这个切换让我多次试图理解它。

我已经使用ZF2几个月了,我发现编写一个类来为您生成该配置非常有用

没有工具可以帮你做到这一点。但是,如果您遵循以下方法,您应该很快就正确了:

class Configurator {
    public static function route($name, $url, $controller, $action='index') {
        return array(
            'router' => array(
                ...
            ),
        );
    }

    # Other static configuring methods

    ...
}
然后在配置中使用如下配置程序:

use Configurator;

return array_merge_recursive(
    array(
        'view_manager' => array(
            ...
        ),
    ),

    # Other top-level config
    ...

    Configurator::route('home', '/', 'Application\Controller\Index'),
    Configurator::route('other', '/other', 'Application\Controller\Other')
);
您的配置通过array\u merge\u recursive进行深度合并,最终使用您自己定制的生成器生成所需的配置。您可以使用一个方法自由配置整个配置集,因此您可以创建一个资源配置器,用于设置控制器可调用项、路由以及一个方法中所需的任何其他内容

数组\u合并\u递归FTW


享受!:)

使用快速生成内容。如果您觉得ZF2太复杂,请尝试类似的方法。谢谢,我必须学习zf,因为很多公司都需要它。另一次我会看一下laravel,我注意到zftool没有创建进入配置文件的数组数据。还有其他选择吗?嗯,我自己没有用过zftool,所以我没有意识到它有点半途而废。您现在必须手动设置配置。提交项目的问题,这应该是创建控制器的一部分。尽管如此,您仍必须创建与其对应的管线。你只需要咬紧牙关,学会如何手动完成这一切。把它写在纸上,步骤不多。当我开始学习ZF2时,我也有同样的想法。我能说的是,几个月后,这是一个非常直截了当的东西,我甚至不考虑使用任何工具,因为拥有控制权是很好的,当你熟悉所有东西时,看起来好像工作量要小得多