【FuelPHP】moduleの使い方

FuelPHPのモジュールの使い方を調べたので自分なりにまとめた内容をメモ。

モジュール化すると何がメリットなのか?

  • EC-CUBEやWrodpressなど、管理サイトとフロントサイトを一つのサイト内で実現しやすそう
  • モジュールを分割することで機能ごとに作成者をわけやすそう
  • 逆に、共通部分のみをモジュール化することで別プロジェクトでも再利用しやすそう

とかかなぁ。。。あくまで個人の見解ですのであしからず。

本題のモジュール化ってどうやるのかですが、モジュール化のやり方は参考サイトをみると書いてあるので
ここでは、ちょっと詰まったとこをメモしていきます。


1.モジュール化したときのnamespaceの指定

APPPATH
┗modules
  ┗module1
    ┣classes
    ┃ ┣controller
    ┃ ┣model
    ┃ ┗presenter
    ┣config
    ┣lang
    ┗views

この場合、module1配下のクラスには下記のnamespaceを先頭へ記述します。

この際、namespaceを付与しているクラスはFuel\Core配下のクラスや、モジュール外のクラスを使用する場合は
namespaceがmodule1ではないので必ず¥を付けます。

逆にmodule1内のクラスを使用する場合は¥を付けてはいけません。


2.モジュール内の辞書ファイルを設定ファイルで指定

モジュールを常に読み込む設定を有効にします。
app/config/config.php

つづいて、辞書ファイルの設定を記述します。

これで、module1/lang/ja/labels.phpを読み込むことができます。

とりあえず、今回はここまで。


参考サイト
http://fuelphp.jp/docs/1.7/general/modules.html
http://qiita.com/inoinojp/items/30e5c61e67115ad00dd9
http://inter-arteq.com/fuelphp%E3%81%AEapp%E3%82%92%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%E5%8C%96/