See Serializing Entities in doctrine manual: (Everything you save in a session is serialized and deserialized.)
Serializing entities can be problematic and is not really recommended, at least not as long as an entity instance still holds references to proxy objects or is still managed by an EntityManager.
There is a technical limitation that avoid private properties from being serialized when an entity is proxied (lazy-loaded entities are proxied).
This means that you have to avoid using private
properties for the entities you want to serialize (use protected
entities instead).
Also, if a lazy-loaded entity is not loaded at serialization time, it won't be loadable after de-serialization. So you have to make sure the entity is fully loaded before serializing it.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…