| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 
							- <?php
 
- /**
 
-  * Created by PhpStorm.
 
-  * User:  NODELOG
 
-  * Date: 16/7/2
 
-  * Time: 下午6:12
 
-  */
 
- namespace common\components;
 
- use common\models\Plugin as PluginModel;
 
- use plugins\Plugin;
 
- use Yii;
 
- use yii\base\BootstrapInterface;
 
- use yii\base\Component;
 
- class LoadPlugin extends Component implements BootstrapInterface
 
- {
 
-     public function bootstrap($app)
 
-     {
 
-         // 先判断是否安装,没安装不操作~
 
-         if (!file_exists(Yii::getAlias('@root/web/storage/install.txt'))) {
 
-             return;
 
-         }
 
-         $models = PluginModel::findOpenPlugins();
 
-         foreach ($models as $model) {
 
-             /* @var $plugins Plugin*/
 
-             $plugins = Yii::$app->pluginManager->findOne($model->id);
 
-             if ($plugins instanceof BootstrapInterface) {
 
-                 $plugins->bootstrap($app);
 
-             }
 
-             // 设置别名
 
-             if (!empty($plugins->aliases)) {
 
-                 foreach ($plugins->aliases as $name => $path) {
 
-                     Yii::setAlias($name, $path);
 
-                 }
 
-             }
 
-             // 如果插件里有模块,加载模块
 
-             /*$moduleClass = $plugins->getNamespace() . '\Module';
 
-             if (class_exists($moduleClass) && $plugins->app == $app->id) {
 
-                 $app->setModule($model->id, $moduleClass);
 
-             }*/
 
-         }
 
-     }
 
- }
 
 
  |