Как Doctrine 2 извлекает объекты без вызова конструктора объекта?

Кто-нибудь знает, как это работает?

Solutions Collecting From Web of "Как Doctrine 2 извлекает объекты без вызова конструктора объекта?"

Это работает с помощью несериализующих объектов. Unserializing в PHP не позволяет вызвать конструктор, поскольку сериализованный объект уже сконструирован.

Создайте объект без вызова его конструктора в PHP:

$className = 'stdClass'; # set classname here $serialized = sprintf('O:%d:"%s":0:{}', strlen($className), $className); $object = unserialize($serialized); 

Для получения дополнительной информации см. Эту статью: Доктрина 2: верните мне мой конструктор