spl_autoload_register
С помощью этой функции реализуется автозагрузка классов.
В примере ниже spl_autoload_register регистрирует безымянную функцию, которая будет вызываться PHP при попытке создания экземпляра класса (new) или при попытке вызвать статический метод класса.
Класс у нас нигде не описан, но прежде вывода ошибки, PHP вызывает зарегистрированную функцию и передаёт ей имя класса. Это даёт нам возможность загрузить нужный файл и продолжить выполнение программы.
<?php //Регистрируем безымянную функцию spl_autoload_register(function ($class_name) { echo $class_name.'<br>'; //require $class_name . '.php'; }); MissingClass::test(); //Вызов статической функции несуществующего класса $obj = new MissingClass(); //Попытка создания экземпляра класса