Features
Creole provides the following distinguishing features:
- Built for PHP5: new object model, Exceptions
- Interface-based system allows easy creation & registering of custom drivers or classes that wrap existing drivers to provide additional functionality (e.g. to log queries for debugging, do query performance analysis using EXPLAIN, etc.).
- Fully object-oriented API
- ResultSet scrolling: next, previous, first, last, relative, and absolute row fetching.
- ResultSetIterator (SPL) provides an additional means for iterating over recordsets.
- Comprehensive database metadata (database, table, full column info, pimary keys, foreign keys, indexes) using simple OO API.
- Full unified type system (based on JDBC Types)
- Simple, un-exceptional OO API for handling BLOB and CLOB data.
- Type-specific methods handle any necessary conversions and escaping for inserting and retrieving values.
- Native (no emulation) handling of autoincrement / sequence id generation.
- Extensive unit test framework tests each driver using real databases.
PHP5専用のO/Rマッピングツール(最近はパーシステンスフレームワークと言うのかも)のPropel
(via PHPLog)のサブプロジェクトCreole(クレオール?)。
PEAR DBみたいなDB抽象レイヤーのようです。
PHP5でこの辺のツール群はこういうのに全部取って代わられちゃうんでしょうか。PHP4 Mojavi2.0 DB_DataObjectはひよってますか。