最近、PHPのフレームワークには Kohana を利用しています。
http://kohanaphp.com/
Kohana は、CodeIgniter を元に開発されたフレームワークです。
コントローラのディレクトリが2階層に限定されるCodeIgniter の制約がイヤになって CodeIgniter の Forum を見ていたところ、いろんな人が Kohana に移った記事を見て、私も見てみたところ、Kohanaのインスタンス化のしくみ、イベントモデルにすっかり魅了され、Kohanaに移ってきました。
しかし、Kohana は PHP >= 5.2.3 が要求されるので、共用レンタルサーバでは厳しいです。
(そういった場合は、CodeIgniter で対応しています。)
それに、UTF-8 を前提に作られているので、携帯サイトをShift_JISベースで作る場合は、若干の(?)カスタマイズが必要です。
それでも、Kohanaのインスタンス化の仕組みはとても強力です。
Kohana は、システム、モジュール、アプリケーションの3層構造になっています。
それぞれの階層にクラスを置けて、クラスを new すると、アプリケーション、モジュール、システムといった順に検索して自動的にインスタンス化してくれます。
それが、コントローラ、ライブラリ、ヘルパ、設定ファイル、といったさまざまな種類のファイルについて同様になっていて非常に強力です。
http://docs.kohanaphp.com/general/filesystem
これまでKohanaを使ってきて、ためてきたネタをそろそろ少しずつ開放していこうと思います。


