@fecshop\services; 请问fecshop这个命名空间怎么定义的啊?
解答:
这个是fecshop基于yii2,做成composer包的方式,遵循yii2扩展包的规则
https://github.com/fecshop/yii2_fecshop/blob/master/composer.json
,在这个文件中可以看到如下:
"autoload": {
"psr-4": {
"fecshop\\": ""
}
},
@fecshop
就是在这里定义的,做成了独立的composeer包,在扩展通过composer安装的时候,会被被添加到这个文件
vendor/composer/autoload_psr4.php
中,打开这个文件,你会发现里面有fecshop的配置
'fecshop\\' => array($vendorDir . '/fancyecommerce/fecshop'),
另外Yii2包中也会有记录:打开文件 vendor/yiisoft/extensions.php
'fancyecommerce/fecshop' =>
array (
'name' => 'fancyecommerce/fecshop',
'version' => '1.3.2.1',
'alias' =>
array (
'@fecshop' => $vendorDir . '/fancyecommerce/fecshop',
),
),
如果你了解yii2,你可以看到很多扩展都有一个自己的文件的命名空间的定义
如果你想做扩展,可以参看: Github 如何制作Composer包
2.fecshop 全局自定义添加
common/config/bootstrap.php
中添加,这个也是yii2的知识,你可以参考里面的配置添加你自己的命名空间,对应一个目录
3.fecshop 各个入口添加
譬如,你想在appfront这个入口中添加,打开 appfront/config/bootstrap.php,
在里面添加即可