If you’ve ever tried to use an ORM to create a data layer in PHP, then you know its not always as easy as it seems. Not to mention if you actually have to change a relationship, you could be digging through thousands of lines of code for days. Not anymore, a friend of mine has created Outlet ORM, although in its early versions it’s well worth taking the time to learn.
I think that he does a fantastic job of explaining outlet:
“Outlet is an open source object-to-relational mapping tool for PHP.
It differs from other orm solutions for php in that it provides transparent, unobtrusive persistence. It does not require your entity objects to implement any interfaces or extend some sort of base class. It is also very lightweight, only a handful of classes and tools.
It uses an approach similar to hibernate in java, using proxy objects that save the data behind the scenes.”
From my experience so far its a fantastic tool to work with in PHP, it has definitely made my work in PHP quicker and more organized by creating objects for my database calls. It also takes care of saving/updating/deleting items for me in one easy call, EVEN if they relate to something else and need to be deleted. Great tool, check it out at http://www.outlet-orm.org.