2017-02-15 85 views
0

我不明白为什么停止工作AggregateHydrator如果在映射器工厂得到它:返回迁移后为什么停止工作水化器zf2-> zf3?

$aggregatehydrator = $container->get(AggregateHydrator::class); 

空的对象。我试着调试和PHP正在死去(多余的内存),当我尝试:

\Zend\debug\debug::dump($aggregatehydrator); 

如果我水化另一种方式:

$tagsHydrator = $container->get(TagsHydrator::class); 
$categoryHydrator = $container->get(CategoryHydrator::class); 
$postHydrator = $container->get(PostHydrator::class); 
$datesHydrator = $container->get(DatesHydrator::class); 
$aggregatehydrator = new  \Zend\Hydrator\Aggregate\AggregateHydrator(); 
$aggregatehydrator->add($postHydrator); 
$aggregatehydrator->add($categoryHydrator); 
$aggregatehydrator->add($tagsHydrator); 
$aggregatehydrator->add($datesHydrator); 

它工作一切。填充的对象被返回。

https://bitbucket.org/mad-max/blog-note3/overview

class AggregateHydratorFactory implements FactoryInterface 
{ 
    public function __invoke(ContainerInterface $container, $requestedName, array $options = null) 
    { 
     $aggregatehydrator = new AggregateHydrator(); 

     $tagsHydrator = $container->get(TagsHydrator::class); 
     $categoryHydrator = $container->get(CategoryHydrator::class); 
     $postHydrator = $container->get(PostHydrator::class); 
     $datesHydrator = $container->get(DatesHydrator::class); 


     $aggregatehydrator->add($postHydrator); 
     $aggregatehydrator->add($categoryHydrator); 
     $aggregatehydrator->add($tagsHydrator); 
     $aggregatehydrator->add($datesHydrator); 

     return $aggregatehydrator; 
    } 
} 
+0

您应该添加代码'AggregateHydrator'工厂。 – AlexP

+0

所以问题是当你执行'\ Zend \ debug \ debug :: dump($ aggregatehydrator)''时,你的服务器内存不足。也许你不应该那样做?为什么你首先要倾倒一个水合物实例? – Wilt

+0

因为我试图调试,以了解它为什么不起作用。该字符串实际上不存在。 –

回答

相关问题