php项目开发实例

php项目中类的自动加载实例讲解

主要函数:spl_autoload_register() — 注册给定的函数作为 __autoload() 的实现

将函数注册到SPL __autoload函数队列中。如果该队列中的函数尚未激活,则激活它们。

如果在你的程序中已经实现了__autoload()函数,它必须显式注册到__autoload()队列中。因为spl_autoload_register()函数会将Zend Engine中的__autoload()函数取代为spl_autoload()或spl_autoload_call()。

如果需要多条 autoload 函数,spl_autoload_register() 满足了此类需求。 它实际上创建了 autoload 函数的队列,按定义时的顺序逐个执行。相比之下, __autoload() 只可以定义一次。

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • <?php
  •  
  • // $class 类名
  • function autoloader_1($class) {
  •   include 'classes/' . $class . '.class.php';
  • }
  •  
  • function autoloader_2($class) {
  •   include 'classes/' . $class . '.class.php';
  • }
  •  
  • // 可以多次使用,但 __autoload() 函数只能使用一次。
  • spl_autoload_register('autoloader_1');
  • spl_autoload_register('autoloader_2');
  •  
  • // 或者,自 PHP 5.3.0 起可以使用一个匿名函数
  • spl_autoload_register(function ($class) {
  •   include 'classes/' . $class . '.class.php';
  • });
  • 以上就是全部相关知识点内容,感谢大家的学习和对开心学习网的支持。

    原文链接:https://www.cnblogs.com/qingsong/p/11511871.html

    标签: