すっかり忘れてましたが、当方FuelPHP1.7を対象に書いております。
Controller書いていきますヽ(´@ω@`)ノ
FuelPHPのコントローラーのタイプは4つ。
- Controller
- Controller_Template
- Controller_Restable
- Controller_Hybrid
Controllerは基本のコントローラークラス。
class Controller_Welcome extends Controller // 継承して利用
{
Controller_Templateはビューテンプレートを用いることができるコントローラークラス。例えばヘッダー、サイドバー、フッターなどを含むページ全体のテンプレートがある場合などはこちら。
テンプレートファイルにそれぞれのビューを嵌めこむ形になるので、CakePHPに慣れている方はこちらのほうが使いやすいかもしれません。
Controller_Restableはビューを利用しないコントローラークラス。DBを検索してデータを返す処理などに使います。
第一回でも書いたとおり、ひとつのメソッドでXMLもJSONもPHP配列も返却できるのがFuelの利点ですので、モバイルアプリなどを作成する場合はこちらで作っちゃうと楽かと思います。
※主観です
Controller_HybridはTemplatemとRestableの両方を利用できるクラス、とのことです。まだ使ったことがないです(@ω@)
命名
Controllerクラスの基本的な命名規則は、Controller_Hogehogeです。ファイル名はhogehoge.phpになります。
Controller_Hoge_Hogeなどにしてしまうと一段下の階層を指してしまうので注意。
Controllerクラスの基本メソッドは以下のとおり。
public function action_hello()
{
return Response::forge(ViewModel::forge('welcome/hello'));
}
クラスの命名規則は、action_hogehogeとなります。
このメソッド(Controller_Welcome -> action_hello())は
localhost/fuelphp/public/ welcome / hello でアクセスすることができます。
return部分で返却しているのがビューファイル、対応のファイルはapp/viewsの下にあります。
app/classes/viewではないので注意!
Controller_Templateを利用する場合、Controller_Restableを利用する場合についてはまた別記事にします。
ちなみにFuelPHPのコーディング規約についてはFuelPHP公式のコーディング規約が詳細ですので是非に。
さて次はCakePHPer大本命のController_Templateの実装に移りましょうヽ(´@ω@`)ノ
※当方CakePHPに慣れているので、オートローダーなど自然にスルーしてる項目がいくつかあると思います。わかりにくい箇所はご指摘いただくとありがたいです。