private function registerAutoLoad() { spl_autoload_register([$this, 'userAutoload']); }
自动加载本类的userAutoload方法,在调取不存在类的时候自动调用此方法。
public function userAutoload($className) { //定义基本类列表 $baseClass = [ 'model' => './framework/model.php', 'db' => './framework/db.php', ]; //依次判断基础类,模型类,控制器类 if (isset($baseClass[$className])) { require $baseClass[$className]; //加载模型基类 } elseif (substr($className,-5)=='Model') { require './application/home/model/'.$className.'.php'; } elseif (substr($className,-10)=='Controller') { require './application/home/controller/'.$className.'.php';
参数$className为被调取 不存在的类的名字(如下图) 就等于model
<?php class studentModel extends model { }回到图二就会自动引用model文件。要注意大小写都不能有差。不然是引用不到的