Yii如何知道CWebApplication存在?

时间:2012-08-30 09:26:10

标签: yii bootstrapping

我试图解释一下Yii如何为我自己的教育目的而初始化。但是我一开始就陷入了困境。所以这就是:

我理解在index.php中如何将两个文件分配给变量:

$yii=dirname(__FILE__).'/../framework/yii.php';
$config=dirname(__FILE__).'/../protected/config/main.php';

我了解如何通过包含变量$yii来包含第一个文件:

require_once($yii);

我知道在空 class Yii{} (在yii.php中找到)中调用静态方法,该方法是 {的扩展名{1}} (在Yiibase.php中找到)并且变量 class Yiibase{} 会传递给该方法:

$config

我不明白的是:

  • Yii::createWebApplication($config)->run(); 做了什么以及来自哪里?
  • 如何在createWebApplication方法中创建一个对象(->run()),在此之前我不会看到包含在文件中的对象。它如何知道CWebApplication存在?

1 个答案:

答案 0 :(得分:2)

createWebApplication() #只返回new CWebApplication($config) #,其中包含run() #方法,此类可以通过之前的注册轻松自动导入自动加载器#