FuelphpでMVCをモジュール化する時の設定方法をメモします。
開発を進めていくとファイルが膨大になってしまって、開発効率が落ちることがあります。
モジュール化することでMVCをまとめることができるので、開発する時にファイル等を参照しやすくなります。
また、ディレクトリごとコピーしてしまえば簡単に複製することができるので、開発効率も上がると思います。
FuelphpでMVCをモジュール化する場合の記述方法や設定方法等を下記に記載します。
■ Fuelphpでモジュール化する方法
Fuelphpのディレクトリ構造はモジュール化をしない場合、
下記のような構造になっています。
モジュール化する場合は「modules」ディレクトリの中にモジュールごとに設置します。
今回は「hoge」というモジュールを作成しています。
コントローラー、モデル、ビューをモジュール内に設置します。
・config.phpの設定
モジュール化を設定する為に「/fuel/app/config/config.php」を編集します。
下記のように「module_paths」を設定します。
※複数設定することも可能です。
'module_paths' => array( APPPATH.'modules'.DS ),
・namespaceを設定
コントローラー、モデルにnamespaceを記述します。
下記は「hoge」というモジュールを作成した場合です。
※namespaceはモジュール名と同じにしてください。
【controller】
<?php namespace Hoge; use Hoge\Model\Hoge; class Controller_Hoge extends \Controller_Template {
【model】
<?php namespace Hoge\Model; class Hoge extends \Model {
モジュールの外にあるクラスを呼ぶ場合は、「\」を付けます。
下記のように「\」を先頭に記述します。
※モジュール内のクラスを呼ぶとき以外は全て付与しないとエラーになります。
\Uri::segment(1);
モジュール化を使用した方がファイルが参照しやすくなるので、とても便利です。
大きいプロジェクトなどでは最初の段階で設定しておいた方がいいと思います。