Как правильно определить что запущено - Контроллер или Модуль?

Можно конечно с request но все же

1.1 или 2.0?

Yii2

Здесь же вопрос. Yii::$app это Модуль (yii\web\Application расширяет yii\base\Application, тот расширяет yii\base\Module). У модулей есть св-во module, в котором хранится родительский модуль. PhpStorm дебаг показывает что для r=catalog/default/index (т.е. для модуля Catalog) там храниться модуль Yii::$app. Т.е. Yii::$app яв-ся для него родительским. Собственно вопрос. Почему тогда Yii::$app->hasModule(‘Application’) ничего не возвращает (этот метод возвращает дочерние модули)? Ведь по логике модуль catalog его дочерний модуль? Или я туплю, что-то делаю не так?=)

Фактически вы ответили на свой вопрос:




if (Yii::app()->controller->module) {

    echo "I'm in a module " . Yii::app()->controller->module->id;

}