Book Image

Persistence in PHP with Doctrine ORM

By : Kevin Dunglas
Book Image

Persistence in PHP with Doctrine ORM

By: Kevin Dunglas

Overview of this book

Doctrine 2 has become the most popular modern persistence system for PHP. It can either be used as a standalone system or can be distributed with Symfony 2, and it also integrates very well with popular frameworks. It allows you to easily retrieve PHP object graphs, provides a powerful object-oriented query language called DQL, a database schema generator tool, and supports database migration. It is efficient, abstracts popular DBMS, and supports PHP 5.3 features. Doctrine is a must-have for modern PHP applications. Persistence in PHP with Doctrine ORM is a practical, hands-on guide that describes the full creation process of a web application powered by Doctrine. Core features of the ORM are explained in depth and illustrated by useful, explicit, and reusable code samples. Persistence in PHP with Doctrine ORM explains everything you need to know to get started with Doctrine in a clear and detailed manner. From installing the ORM through Composer to mastering advanced features such as native queries, this book is a full overview of the power of Doctrine. You will also learn a bunch of mapping annotations, create associations, and generate database schemas from PHP classes. You will also see how to write data fixtures, create custom entity repositories, and issue advanced DQL queries. Finally it will teach you to play with inheritance, write native queries, and use built-in lifecycle events. If you want to use a powerful persistence system for your PHP application, Persistence in PHP with Doctrine ORM is the book you.
Table of Contents (12 chapters)

About the Reviewers

Kirill Chebunin is a software engineer specializing in server-side web development. His main interests lie in the field of systems with complex background logic. He has been working as the head of a PHP development department, building different enterprises, and billing and analytics systems for the last two years. But his real passion is for open source projects and their communities. Kirill's talks can be found in Russian and Ukrainian PHP conferences, and his commits are presented in Composer, Doctrine, and Symfony projects. You can always see his current interests at Github ( and SlideShare (

Stefan Kleff has been developing web applications for over 12 years at various positions in various companies. He holds degrees from the University of Applied Sciences in Iserlohn, as well as the Hasso Plattner Institute of Computer Science. In a cooperation class with Stanford University, he acquired practical knowledge of Design Thinking. Stefan is an active contributor to the Doctrine project and Zend Framework 2. Currently, he is working as a Project Manager at webXells GmbH and is the co-founder of goalio UG in Potsdam, Germany.

Adam Prager is a full stack web application developer who has created many data-heavy business management applications in the areas of Customer Relationship Management (CRM), Enterprise Resource Planning (ERP), and Laboratory Information Management System (LIMS). He is a big believer in the value and power of open source software, and contributes to projects such as Doctrine and Symfony regularly on Github. He has published numerous Symfony bundles and jQuery plugins of his own. Adam currently works for Netlife in Hungary. Netlife is a Consulting and IT services company, which provides web application development services using the latest technologies, and complete business solutions based on SAP consulting. As a diverse end-to-end IT solutions provider, Netlife offers a range of expertise aimed at assisting customers to compete successfully in the ever changing IT industry. They provide long term solutions with a focus on quality. They have excellent domain expertise in SAP, CRM, custom web application development, and user experience design.

Chris Woodford is a web software consultant and entrepreneur based in Toronto, Canada. He has been working with modern web technologies (Ruby, nodeJS, and PHP) for over 10 years, with a focus on solving tough problems. In his spare time, he co-runs a small record label, Hypaethral Records ( and tours the world with his band TITAN (