Я создал класс автозагрузчика, который работает, как задумано, но заметил странное поведение. Когда я повторяю результаты найденных классов, которые передаются методу, который обрабатывает функцию spl_autoload_register()
. Я вижу, что у меня есть двойники. Например, если скрипт вызывается дважды, и, поскольку он является единичным, в моем случае данные строят 2 массива.
Я использую этот метод для создания моего синглтона
public static function init()
{
if (!isset(self::$instance))
self::$instance = new self();
return self::$instance;
}
У меня тогда конструктор установлен в приват. Я прошел через каждый метод отладки, пытаясь увидеть, где он создает свой клон.
Я подозреваю, что мои классы и класс по этому вопросу клонируются где-то в функции spl_autoload_register ().
любая помощь будет оценена.