yii/base/Application 重写构造方法
public function __construct($config = [])
{
Yii::$app = $this;
static::setInstance($this);
$this->state = self::STATE_BEGIN;
$this->preInit($config);
$this->registerErrorHandler($config);
//foreach ($config as $k=>$v){
// echo $k.'<br>';
//}
$dbConfig['components']['db'] = $config['components']['db'];
$dbConfig['id'] = $config['id'];
unset($config['components']['db']);
foreach ($this->coreComponents() as $componentName => $v) {
if (isset($config['components'][$componentName])) {
$dbConfig['components'][$componentName] = $config['components'][$componentName];
unset($config['components'][$componentName]);
}
}
Component::__construct($dbConfig);
//var_dump(Yii::$app->db); 这里就可以使用db组件了,进行数据库查询,
// 查出来数据,然后和 $config 进行合并。然后执行其他的配置的初始化
Component::__construct($config);
}
