生命周期回调在实体上注册:
http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/events.html#lifecycle-callbacks
为所有实体注册事件侦听器。然而,Doctrine现在还具有所谓的"实体监听器" (即事件监听器,在实体 -level注册):
http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/events.html#entity-listeners
不幸的是,文档并没有说明两者之间的区别。什么时候用哪个?特别是:是否有异步调用?
答案 0 :(得分:1)
对于侦听器,您可以使用外部依赖关系的主要区别。换句话说,您不仅可以更改实体本身。
使用回调时,您只能更改实体的内部字段,而不能更改其他实体,或者执行您需要的任何操作(记录,发出HTTP请求,创建其他对象等)。