(概要)¶opCalendarPlugin等で使用されているDATE_FORMAT関数がDoctrineによってサポートされておらずMySQL依存となっているため、Doctrineを拡張してPostgreSQLやSQLiteでもDATE_FORMAT関数が動作するようにする。(仕様)¶DoctrineのExtensionsを利用する。独自の関数を実装するためにはDoctrine_Expressionの派生クラスを作成する必要があるがDoctrineにはDoctrine_Expression派生クラスを直接適用する手段が用意されていないため、各DBMSのDoctrine_Connectionクラスを継承した派生クラスも作成する。以下に追加したクラスのコードはDoctrineのコーディングルールに合わせました。以下に配置していることやDoctrineに対する拡張であることから、これらのコードはsymfonyにもOpenPNE3にも属さないと考えたためです。100テストOKです。