spl_autoload_register()

时间:2024-07-10 19:08:08
5.3版本增加了命名空间
prepend函数
<?php

// function __autoload($class) {
//     include 'classes/' . $class . '.class.php';
// }

function my_autoloader($class) {
    include 'classes/' . $class . '.class.php';
}

spl_autoload_register('my_autoloader');

// 或者,自 PHP 5.3.0 起可以使用一个匿名函数
spl_autoload_register(function ($class) {
    include 'classes/' . $class . '.class.php';
});

?>

__autoload 一个大型点的项目~一个面向对象的项目~
你写了很多类,而且一个类以个文件~
那是不是你要用这个类的时候需要引用他对把~(require_one)
你要引用很多类的时候,就要写很次次require_one
而PHP 有__autoload函数
你不需要写个脚本在每个脚本开头写一个长长的包含文件列表
__autoload() 函数,它会在试图使用尚未被定义的类时自动调用。
意思就是但脚本遇见没有定义的类是就会自动调用他,(没有他就直接报错对把)
然后你就可以在__autoload() 函数require_one;例如API 里很多例子 然后
spl_autoload_register()
我觉得上面说的很清楚了,如果你是面向过程来写的话,我觉得完全没有必要学习他~~