Warning: this article was posted in January 2012 and some parts may now be out of date Doctrine 2 has a very powerful database abstraction layer and features an Object Relational Mapper (ORM) that makes it very easy to manage relationships between the data in your application and provides tools that aid rapid application development (RAD). With Doctrine also comes DQL, a powerful language for quer