2016-10-13 104 views
1

在我当前的项目中,我使用doctrine和一个侦听器,检查某些更改以触发缓存失效。通过引用返回不支持

在我的测试中,由于使用的$entityManager->getUnitOfWork()->getEntityChangeSet($entity)我得到以下错误:

Returning by reference not supported 

这种情况的底层代码是教条类UnitOfWork内:

public function & getEntityChangeSet($entity) 
{ 

我明明赢了't /不能改变。 调用它已经在生产工作中的代码:

$args->getEntityManager()->getUnitOfWork()->getEntityChangeSet($entity) 

我更新,我们支持(4.8)最新的稳定版本的PHPUnit并不能去,因为那么我不得不重写所有的测试更高(由于多种方法已被弃用)。

我该如何解决这个问题?

回答

0

我相信你可以使用版本2.5的doctrine/orm。 它没有这个通过参考,只有master持有它

+0

对不起,你说我应该使用2.5(我是)或我应该使用主? –

+0

在2.5中没有这个引用调用(据我所见)https://github.com/doctrine/doctrine2/blob/2.5/lib/Doctrine/ORM/UnitOfWork.php#L526 –

+0

我使用的是master 2.5 https://github.com/doctrine/doctrine2/blob/master/lib/Doctrine/ORM/UnitOfWork.php#L517 –