Moony_DB
Moony_DBは同梱し続けることに決定。
勿論、これもインジェクションすることが可能。
[Injections] db=Moony_DB
上記のように設定ファイルに記述しておけば、$dbという変数にMoony_DBのインスタンスがインジェクションされる。
class Foo { var $db; // Moony_DBのインスタンス function execute() { $this->db->connect('pgsql://user:pass@host/db'); $this->db->disconnect(); } }
Moony_DBの内部ではコンストラクタが実行された段階でPEAR::DBがincludeされるので、Moony_DBを使用しない場合はPEAR::DBが動作環境に存在しなくてもエラーにはならない。