• Inserts
  • Selecting
  • Entities
  • Configuration
Instantiate your entities and manipulate them just like regular objects. Save them when ready.
<?php
$outlet = Outlet::getInstance();
 
$client = new Client;
$client->Name = 'Test Client';
 
$project = new Project;
$project->Name = 'Cool Project';
$project->setClient( $client );
 
$bug = new Bug;
$bug->Title = "Button doesn't work";
 
$project->addBug( $bug );
 
// inserts the project 
// and all of the related entities
// in one transaction
$outlet->save( $project );
 
Google Groups
Subscribe to Outlet ORM discussion group
Email:
Visit this group

You are also welcome to post relevant questions/comments to the list without actually joining. Just send an email to:
outlet-orm@googlegroups.com

Welcome

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.

Outlet is released under the New BSD License.

Latest News

Version 1.0 Release Candidate 1 Released!

December 8th 2009 12:49pm

A release candidate for the 1.0 release is now available. It is based on v0.7 with some performance improvements, bug fixes, and clean up. Here are some of the updates:

  • Switched to phpunit for unit testing
  • Fixed a lot (i think all of them) of E_STRICT notices
  • Added NestedSetBrowser as a utility to help implementations of nested sets (modified preorder tree traversal)
  • Added a lot more source comments
  • Fixed a bunch of small bugs

If there are no problems with this version within the next few days, we'll re-release it as a version 1.0!

Many thanks to everyone that contributed to this release.

Enjoy!

Version 0.7 Released!

April 22nd 2009 1:22pm

We are releasing version 0.7 which includes the following updates:

  • One-to-one and many-to-many relationships
  • PHP-5.2's DateTime support
  • Fluent-interface query API
  • Eager-fetching (for many-to-one and one-to-one relationships)
  • PostgreSQL support
  • Support for using getters and setters instead of public properties for entity attributes

Please check it out and let us know what you think. If upgrading from 0.6, keep in mind that your models will have to be updated to use Collection instead of array for relationships. Details about this can be found on this thread. More to come on the documentation.

Enjoy!

CodeIgniter Integration

November 2nd 2008 12:14pm

Fábio Rehm has written a great post about how to integrate Outlet with CodeIgniter, check it out:

http://codeigniter.com/forums/viewthread/95565/

Thanks, Fábio