Module クラス

Module クラスを使用すると、簡単にモジュールの読み込みや開放、読み込まれているモジュールが存在するかどうかの確認、読み込まれている全てのモジュールリストの取得を行うことができます。

load($module, $path = null)

load メソッドを使用すると、実行時に 1 つ以上のモジュールを読み込むことができます。もしもそのモジュールが見つからなかった場合には、例外 ModuleNotFoundException を発生させます。

静的 はい
パラメータ
パラメータ デフォルト 説明
$module 必須 読み込みを行うモジュールの名前、またはモジュールの配列。
$path null モジュールへのパス。これを使うと定義されたモジュールパス外にあるモジュールの読み込みを行うことができます。
返り値 void
// users モジュールの読み込み
Module::load('users');

// 特定のディレクトリにある users モジュールの読み込み
Module::load('users', '/path/to/modules/users/');

// 1 度に複数のモジュールの読み込みを行う
Module::load( array('Users' => '/path/to/modules/users/', 'Groups' => '/path/to/modules/groups/') );

// 存在しないモジュールの読み込み
Module::load('awesome'); // 例外 ModuleNotFoundException が発生する 

You can configure whether or not the modules routes should be loaded as well, through the config key "routing.module_routes".

unload($module)

unload メソッドを使用すると、実行時にモジュールの開放を行うことができます。

静的 はい
パラメータ
パラメータ デフォルト 説明
$module 必須 開放を行うモジュールの名前。
返り値 void
// users モジュールの開放
Module::unload('users');

これは、ロードされたとき (routes.php ファイルに) モジュールで定義された場所の、すべてのルートを削除 (しようと努力) します!

loaded($module = null)

loaded メソッドを使用すると、そのモジュールが現在読み込まれているかどうかを確認することができます。存在しないモジュールの名前を指定された場合には、読み込まれている全てのモジュールが返されます。

静的 はい
パラメータ
パラメータ デフォルト 説明
$module null 確認したいモジュールの名前。
返り値 bool|array
// users モジュールが読み込まれているかどうかの確認
$loaded = Module::loaded('users');

// 読み込まれている全てのモジュールを取得する
$loaded = Module::loaded();
/*
以下のような返り値を得ることができます :
array(
    'users' => '/path/to/users',
    'groups' => '/path/to/groups',
)
*/

exists($module)

exists メソッドを使用すると、モジュールが存在するかどうかを確認することができます。 例えば、設定されたモジュールのパスが 1 つでも存在した場合にはそのパスを、存在しなかった場合には false を返すことができます。

静的 はい
パラメータ
パラメータ デフォルト 説明
$module null 確認したいモジュールの名前。
返り値 bool|string
// 必要に応じて comments モジュールを読み込む
if (Module::exists('comments'))
{
	Module::load('comments');
}