symfony + MySQL に検索エンジンとして Senna を組み合わせている場合、Propel の Criteria は MySQL 固有の'MATCH (xx) AGAINST ('query')' に対応していないので、若干面倒なことになる。 Criteria::CUSTOM を使うと、独自の SQL 文を差し込むこともできるんだけど、文字列の escape をする機能が使えない*1。 結局、全部カスタム SQL で書いて、prepareStatement() して execQuery() してとやってるのですが、もうちょっと Criteria でがんばれる方法は無いですかね? *1:Criteria から取り出せる PreparedStatement オブジェクトが escape というメソッドを持ってるんだけど protected なんだな