Yii::$app->ComponentID 全局访问。
controllerMap
该属性允许你指定一个控制器ID到任意控制器类。 Yii遵循一个默认的 规则 指定控制器ID到任意控制器类(如post对应appcontrollersPostController)。 通过配置这个属性,可以打破这个默认规则,在下面的例子中, account对应到appcontrollersUserController, article 对应到 appcontrollersPostController。
[ 'controllerMap' => [ 'account' => 'appcontrollersUserController', 'article' => [ 'class' => 'appcontrollersPostController', 'enableCsrfValidation' => false, ], ], ]
数组的键代表控制器ID, 数组的值代表对应的类名。
controllerNamespace
该属性指定控制器类默认的命名空间,默认为appcontrollers。 比如控制器ID为 post 默认对应 PostController (不带命名空间), 类全名为 appcontrollersPostController。
控制器类文件可能放在这个命名空间对应目录的子目录下, 例如,控制器ID admin/post 对应的控制器类全名为 appcontrollersadminPostController。
控制器类全面能被 自动加载, 这点是非常重要的,控制器类的实际命名空间对应这个属性, 否则,访问时你会收到"Page Not Found"[译:页面找不到]。
如果你想打破上述的规则, 可以配置 controllerMap 属性。
language
该属性指定应用展示给终端用户的语言, 默认为 en 标识英文。 如果需要之前其他语言可以配置该属性。
该属性影响各种 国际化 , 包括信息翻译、日期格式、数字格式等。 例如 yiijuiDatePicker 小部件会根据该属性 展示对应语言的日历以及日期格式。
推荐遵循 IETF language tag 来设置语言, 例如 en 代表英文, en-US 代表英文(美国).
modules
该属性指定应用所包含的 模块。
该属性使用数组包含多个模块类 配置,数组的键为模块ID, 例:
[ 'modules' => [ // "booking" 模块以及对应的类 'booking' => 'appmodulesbookingBookingModule', // "comment" 模块以及对应的配置数组 'comment' => [ 'class' => 'appmodulescommentCommentModule', 'db' => 'db', ], ], ]
name
该属性指定你可能想展示给终端用户的应用名称, 不同于需要唯一性的 id 属性, 该属性可以不唯一,该属性用于显示应用的用途。
如果其他地方的代码没有用到,可以不配置该属性。
params
该属性为一个数组,指定可以全局访问的参数, 代替程序中硬编码的数字和字符, 应用中的参数定义到一个单独的文件并随时可以访问是一个好习惯。 例如用参数定义缩略图的长宽如下:







