2008-09-01 11 views
2

PHPでのActiveRecordの実装に関する推奨事項はありますか?私はCBL ActiveRecordを使用していましたが、実行可能な選択肢があるかどうかは疑問でした。ActiveRecord

答えて

1

に依存します。 ;)

例えば、ADODB's Active Record implementationがある場合、Zend_Db_DataTableとDoctrineがあります。それらは私が知っているものです、私はより多くの実装があると確信しています。

これら3つのうち、ドクトリンをお勧めします。最後に、AdodbがPHP4とZend_Db_ *のために余分なウェイトを多く持っていることを確認したのは、完全性とパフォーマンスの面で最もよく知られていません。

DoctrineをActive Tableとは別にして、一般的なデータベース抽象化(別名DBAL)にはチェックアウトの価値があるほどのものがあります(例えばマイグレーション)ので、DBALで心配する必要がなければ、それをチェックする。

0

厳密にはActiveRecordではありませんが、Zend_Db_Table はかなり良いです。

1

私は他の実装のいくつかの例を見つけました: Luke Bakerは彼がActive Record in PHPと呼んでいるものを持っています。

Flinnには、なぜRubyではすべてがオブジェクトなので、PHPではできないのかについてのpostがあります。フォローアップでhere

私はZFを見ていくつか知っていますか?

CakePHP

+0

あなたの投稿がリンク切れに苦しんでいます。修正してください。 – silasjmatson

1

これは実装方法のヒントですが、私はPHPでActiveRecord/DataMapperの実装を作成し始め、アレイのようなアクセスで多くのハードルに直面しました。最終的にPHP、特にArrayObjectとArrayIteratorへのSPL拡張が見つかりました。これらは私の人生をもっと楽にし始めました。残念ながら、私はそれに専念する時間があまりありませんでしたが、このようなことを試してみる人は誰でもそれらをチェックしてください。

5

私はこれが古くなっていることを認識していますが、適切にPHP Activerecordという名前の絶対的に素晴らしいPHP Activecordライブラリがあります。私はそれを数ヶ月使用し、他のライブラリを吹き飛ばします。

それをチェックアウト:

http://www.phpactiverecord.org/