Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Francois Zeninotto's Blog:
Comparing Propel, Doctrine and sfPropelFinder
Jul 09, 2008 @ 10:24:59

Francois Zeninotto has posted a comparison of three different ORM (Object Relational Mapping) layers for PHP - Propel, Doctrine and sfPropelFinder (the last being a plugin of the symfony framework).

When it comes to ORMs, it's all a matter of preference. Is it, really? This post compares side-by-side the code required to perform some simple operations with three OO database requesting API. The purpose is to demonstrate that productivity, and not only style, can vary a lot depending on the ORM you choose.

He's worked up a long list of examples including methods to:

  • Retrieving an article by its primary key
  • Retrieving the latest 5 articles
  • Retrieving articles based on a complex AND/OR clause
  • Retrieving articles authored by people of a certain group
  • Retrieving an article and its category by the article primary key
  • Retrieving articles and hydrating their author object and the author group

Each one comes with their own (usually simple) code. His conclusions point out different "bests" of each - like sfPropelFinder being the "most magic" and that some of the limits of Propel are very frustrating.

tagged: compare orm layer doctrine propel sfpropelfinder symfony framework

Link: