我正在研究一个管理视频的Symfony 2.7项目。我正在编写一个实体侦听器,该侦听器将检查视频的更改,如果ownerGroup属性被更改,则将标签应用于视频。这是我尝试使用的逻辑:
public function preUpdate($video, $args)
{
if(!array_key_exists('ownerGroup', $args->entityChangeSet)){
return;
}
$entity = $args->getEntity();
//It looks like we're changing the ownerGroup property.
//Do some stuff here.
}
问题是该函数运行时得到以下信息:
错误:无法访问私有财产 主义\ ORM \ Event \ PreUpdateEventArgs :: $ entityChangeSet
我可以用吸气剂解决这个问题吗?我的IDE的代码完成似乎并不认为存在这样的功能。
答案 0 :(得分:1)
尝试使用getter方法进行访问,例如:
if(!array_key_exists('ownerGroup', $args->getEntityChangeSet())){
return;
}
文档here中的更多信息