应用主体是服务定位器, 它部署一组提供各种不同功能的应用组件来处理请求。
官方这话,按我的理解这个组件的话,相当于第三方的class上封装使用。例如你要配置OSS,EXCEL
什么的第三方库文件基础上封装自己的对象方法。
但文档没发现怎么去配置使用。自己研究了一下大概了解了流程记录一下。
首先项目目录下建立components文件夹然后建立test.php文件,其实叫什么和放哪里都不是很重要,只要你命名空间和路径是正确的。
如图。
文件内容就简单的输入
<?php
namespace supermarket\components;
class test
{
function test(){
echo 'hello,world';
}
}
然后进入项目目录config->web.php里配置components加上一行。
$config = [
'components'=>[
'test' => [
'class' => 'supermarket\components\test',//test
],
]
]
然后找个Controller的Action里面调用试试
function actionTest(){
Yii::$app->test->test();
exit;
}
执行结果为
成功注册使用了该组件。
官方提示:请谨慎注册太多应用组件, 应用组件就像全局变量, 使用太多可能加大测试和维护的难度。 一般情况下可以在需要时再创建本地组件。