spl_autoload_register

spl_autoload_register('定义的加载这些不存在的类文件的函数', true, true);

class AutoloadClass1{

    public function __construct()
    {
        echo '你已经包含我这个类了';
    }
}

//文件autoloadDemo.php文件
spl_autoload_register('myAutoLoad', true, true);
function myAutoLoad($className){

    echo $className;
    echo "我来加载这些类文件!\r\n"; require $class.'.php'

}
//当AutoloadClass1或者AutoloadClass1不存在时执行myAutoLoad这个函数
$objDemo = new AutoloadClass1();
$objDemo = new AutoloadClass1();

例子2

class AutoloadClass1{

    public function __construct()
    {
        echo '你已经包含我AutoloadClass1这个类了';
    }
}


spl_autoload_register(function ($class) {
    echo 888888;
    echo $class;//此参数为实例的不存在的这个类文件的类名
    echo 888888;
    echo "我来加载这些类文件!\r\n";  
    //include $class . '.class.php';
});


$objDemo = new AutoloadClass1();
$objDemo = new AutoloadClass2();

 

 

例子3:

class AutoloadClass1{

    public function __construct()
    {
        echo '你已经包含我AutoloadClass1这个类了';
    }
}


class AutoLoadFile{

    public static function loadClassLoader($class)
    {
        echo 888888;
        echo $class;//此参数为实例的不存在的这个类文件的类名
        echo 888888;
        echo "我来加载这些类文件!\r\n";  

    // require $class.'.php' }
public static function getLoader(){ spl_autoload_register(array('AutoLoadFile', 'loadClassLoader'), true, true); } } AutoLoadFile::getLoader(); $objDemo = new AutoloadClass1(); $objDemo = new AutoloadClass2(); //输出: // 你已经包含我AutoloadClass1这个类了 // 888888 // AutoloadClass2 // 888888 // 我来加载这些类文件! // Fatal error: Class 'AutoloadClass2' not found in D:\phpStudy\WWW\demotest\index.php on line 33

 

posted @ 2017-02-04 18:13  虚无缥缈的云  阅读(181)  评论(0编辑  收藏  举报