Php Zend Framework 2中的自定义编辑器-如何在配置文件中指定?

Php Zend Framework 2中的自定义编辑器-如何在配置文件中指定?,php,configuration,doctrine-orm,zend-framework2,Php,Configuration,Doctrine Orm,Zend Framework2,我已经成功地创建了一个自定义编辑器,可以通过调用 $entityManager->getConfiguration()->addCustomHydrationMode('...', '...') 方法 但是,我通过工厂将依赖项注入构造函数,因此实体管理器在类本身中不可用-这使得继承有点烦人(工厂继承有人吗?) 我更希望能够在zf2配置文件中配置我的自定义水合器(其中配置了所有路由、服务、其他条令内容等),但我找不到任何关于如何指定此项的文档 这可能吗 什么是必要的魔法咒语 Chee

我已经成功地创建了一个自定义编辑器,可以通过调用

$entityManager->getConfiguration()->addCustomHydrationMode('...', '...')
方法

但是,我通过工厂将依赖项注入构造函数,因此实体管理器在类本身中不可用-这使得继承有点烦人(工厂继承有人吗?)

我更希望能够在zf2配置文件中配置我的自定义水合器(其中配置了所有路由、服务、其他条令内容等),但我找不到任何关于如何指定此项的文档

  • 这可能吗
  • 什么是必要的魔法咒语

  • Cheers找到了在配置文件中指定自定义参数的方法:

    ['doctrine']['configuration']['orm_default']['customHydrationModes']
    
    从类文档(\DoctrineORMModule\Options\Configuration)中:

    键必须是自定义水合方法的名称,值必须是自定义水合器的类名


    可以通过配置在条令中注册水合器。例如,要在由
    Application\module::getConfig
    加载的模块配置数组中注册
    DoctrineModule\Stdlib\Hydrator\DoctrineObject
    Hydrator,可以添加以下代码

    'doctrine' => array(
        'configuration' => array(
            'orm_default' => array(
                'customHydrationModes' => array(
                    'DoctrineModule' => 'DoctrineModule\Stdlib\Hydrator\DoctrineObject',
                ),
            ),
        ),
    ),
    
    这将在名为doctriemodule的水合模式下注册
    doctriemodule\Stdlib\Hydrator\DoctrineObject
    。现在,您可以从实体管理器获取此文件

    $entityManager->newHydrator('DoctrineModule');
    
    有关DoctrineModule的更多信息,请参阅