实现
Yii的类自动加载,依赖于PHP的spl_autoload_register()
, 注册一个自己的自动加载函数(autoloader),并插入到自动加载函数栈的最前面,确保Yii的autoloader会被最先调用。
require(__DIR__ . '/../../vendor/autoload.php');
require(__DIR__ . '/../../vendor/yiisoft/yii2/Yii.php');
首先加载第三方的autoloader,再加载Yii的autoloader。
最后加载Yii的autoloader,这样可以保证Yii的优先加载。
Yii.php
可以查看autoloader代码的调用,它将BaseYii::autoload()
注册为autoloader。
其中调用的classes.php
包涵了所有的核心类。
参考