As of DDC-1734, proxies should have null identifier when the UnitOFWork refreshes entities and replaces them (marking them as un-managed). The problem here is that refreshes on entities with same identifier but different type are still considered same, and the UnitOfWork discards the proxy instance instead of ignoring it.
Doctrine 2 ORM
Doctrine 2 is an object-relational mapper (ORM) for PHP 5.3.2+ that provides transparent persistence for PHP objects. It sits on top of a powerful database abstraction layer (DBAL). One of its key features is the option to write database queries in a proprietary object oriented SQL dialect called Doctrine Query Language (DQL), inspired by Hibernates HQL. This provides developers with a powerful alternative to SQL that maintains flexibility without requiring unnecessary code duplication.
More resources:
Languages
PHP
100%