Php zf2样式对象工厂/闭包
我正在使用命令模式,并试图通过使用闭包来复制zf2样式的服务配置,以尝试在闭包中加载命令对象依赖项。例如,在我的命令工厂中:Php zf2样式对象工厂/闭包,php,zend-framework2,Php,Zend Framework2,我正在使用命令模式,并试图通过使用闭包来复制zf2样式的服务配置,以尝试在闭包中加载命令对象依赖项。例如,在我的命令工厂中: protected function getCommandConfig(){ return [ 'view-details-command' => function () { $userFactory = new My\Model\User\Factory(); $editUserForm
protected function getCommandConfig(){
return [
'view-details-command' => function () {
$userFactory = new My\Model\User\Factory();
$editUserForm = new My\Form\User\Edit();
$editUserForm ->setInputFilter(new My\InputFilter\EditUser());
$command = new My\Command\ViewUserDetailsCommand($userFactory, $editUserForm);
return $command;
}
];
}
。。。这与ZF2在service manager中初始化对象的方式几乎相同。但是,当我运行此命令时,例如$command=$this->getCommandConfig()[$commandName]
我会返回一个closure对象,当我调用一个方法时会引发一个异常,而我期望它是一个命令对象(“调用未定义的方法closure::foobar…”)。我应该怎么做才能使用这种配置?(我没有使用整个ZF2堆栈)