News Feed
Sections




News Archive
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
July 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.

0 comments voice your opinion now!
compare orm layer doctrine propel sfpropelfinder symfony framework


blog comments powered by Disqus

Similar Posts

Debuggable Blog: Amazon Associates API (data source) for CakePHP

Professioanl PHP Blog: Building a culture of objects in PHP

Lukas Smith's Blog: Stop building gold on top of crap

Felix Geisendorfer's Blog: Exceptional Cake

SitePoint PHP Blog: Zend_Filter Reviewed, Blacklist / Whitelist Filters


Community Events





Don't see your event here?
Let us know!


symfony community library zendserver podcast api release laravel introduction interview framework install tips list series update language deployment package opinion

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework