PHP中如何实现类的自动加载机制?
- 内容介绍
- 文章标签
- 相关推荐
本文共计635个文字,预计阅读时间需要3分钟。
推荐学习:PHP视频教程——PHP中的类自动加载
在此之前,我们已经学习过Composer自动加载的原理,其实质就是利用了PHP中类的自动加载特性。PHP中的类自动加载主要依靠`__autoload()`函数实现。
PHP中类的自动加载主要依赖的是`__autoload()`函数和PSR-4自动加载规范。
PHP中类的自动加载
在之前,我们已经学习过Composer自动加载的原理,其实就是利用了PHP中的类自动加载的特性。
PHP中类的自动加载主要依靠的是__autoload()和spl_autoload_register()这两个方法。
今天我们就来简单的看一下这两个方法的使用。
__autoload()
做为一个已经快要被淘汰的魔术方法,我们只需要了解即可。如果在PHP7中使用这个方法的话,会报出过时的警告,系统会建议我们使用spl_autoload_register()方法。
function __autoload($name){ include __DIR__ . '/autoload/' . $name . '.class.php'; } $autoA = new AutoA(); var_dump($autoA);
当我们实例化AutoA类时,当前的文件并没有这个类,也没有从其他文件中include或者require,这时,就会自动进入魔术方法__autoload()中。
本文共计635个文字,预计阅读时间需要3分钟。
推荐学习:PHP视频教程——PHP中的类自动加载
在此之前,我们已经学习过Composer自动加载的原理,其实质就是利用了PHP中类的自动加载特性。PHP中的类自动加载主要依靠`__autoload()`函数实现。
PHP中类的自动加载主要依赖的是`__autoload()`函数和PSR-4自动加载规范。
PHP中类的自动加载
在之前,我们已经学习过Composer自动加载的原理,其实就是利用了PHP中的类自动加载的特性。
PHP中类的自动加载主要依靠的是__autoload()和spl_autoload_register()这两个方法。
今天我们就来简单的看一下这两个方法的使用。
__autoload()
做为一个已经快要被淘汰的魔术方法,我们只需要了解即可。如果在PHP7中使用这个方法的话,会报出过时的警告,系统会建议我们使用spl_autoload_register()方法。
function __autoload($name){ include __DIR__ . '/autoload/' . $name . '.class.php'; } $autoA = new AutoA(); var_dump($autoA);
当我们实例化AutoA类时,当前的文件并没有这个类,也没有从其他文件中include或者require,这时,就会自动进入魔术方法__autoload()中。

