Q:

Data storage in PHP Frameworks

Actually, I'm looking for a framework which helps me using a "Data Mapper" pattern.
I have noticed that a lot of PHP framework propose an "Active Record" implementation...
I found the "Active Record" too poor for managing "functional data"...
It also seems simpler to handle "complex transactions" with this pattern, or to handle non-DBMS backends...
Does anybody know of a PHP framework which handles "Data Mapper" pattern ?
Or a PHP framework which handles "Transactions" independently from DBMS ?

A:

Doctrine coupled with Zend Framework, here is a guide to integrating the two.

The following section tries to explain where Doctrine stands in the world of ORM tools. The Doctrine ORM is mainly built around the Active Record, Data Mapper and Meta Data Mapping patterns.

CakePHP will be providing data mapper functionality in the 2.x releases.

Roadmap / Major Features

Model Refactoring
Extending beyond the "almost" Active Record existing
Interpretation of the Data Mapper design pattern
Returning Objects from model interactions
ArrayAccess to allow backwards compatability

Symfony

The relational database information must be mapped to an object model. This can be done with an ORM tool and thankfully, symfony comes bundled with two of them: Propel and Doctrine.

Codeigniter Datamapper

DataMapper is an Object Relational
  Mapper written in PHP for CodeIgniter.
  It is designed to map your Database
  tables into easy to work with objects,
  fully aware of the relationships
  between each other.

