PHP类文件自动加载
<?php //例子1 //__autoload这个函数不常用 function __autoload($className)//2.通过这个函数把需要的类名传递进去 { require $className . ".php"; //3.把类名传递进来以后与后面的.php做拼接.来实现类文件的引入 } $user = new User();//1.当实例化User类的时候,发现没有这个类.这是就会函数把User这个名字传到__autoload函数中去. var_dump($user); //例子2 //spl_autoload_register 这个函数比较常用 function spl_autoload_register(function($className){ require $className . ".php"; }); $user = new User(); var_dump($user); //例子3 function test($className){ require $className . ".php"; } spl_autoload_register('test'); $user = new User(); var_dump($user); //例子4 class Momo { function autoload($className) { require $className . ".php"; } } spl_autoload_register([new Momo, 'autoload']); $user = new User(); var_dump($user); //例子5 spl_autoload_register(function($className){ //把传入的models\Imooc中的反斜线转换成正斜线/这样就拼接出了文件名和文件路径 include str_replace("\\", "/", $className.".php"); }); $imooc = new models\Imooc(); var_dump($imooc);