定义的模块:
namespace app\modules\article;
use yii;
class Module extends \yii\base\Module
{
public function init()
{
parent::init();
//$this->params['foo'] = 'bar';
// ... 其他初始化代码 ...
//或者从config.php中初始化模块代码
// 从config.php加载配置来初始化模块
Yii::configure($this, require(__DIR__ . '/config.php'));
}
}
应用模块:
//配置模块
'modules' => [
'article' => [
'class' => 'app\modules\article\Module',
],
],
访问模块:
//获取模块的实例
//$module = \app\modules\article\Module::getInstance();
//var_dump($module->id); //获取模块的ID
// 获取ID为 "article" 的模块
//$module = \Yii::$app->getModule('article');
//var_dump($module->id);
// 获取处理当前请求控制器所属的模块
$module = Yii::$app->controller->module;
var_dump($module->id);
//获取模块的参数
echo $module->params['article_name'];
//但不能访问主应用中的配置参数
//echo $module->params['adminEmail'];