Всем доброго времени суток. Сейчас вот создаю свою MVC систему, но сразу же возникли проблемы с автозагрузкой. Собственно вот что у меня сейчас есть: Код (Text): <?php spl_autoload_register(function ($class) { $class = ltrim($class, '\\'); $class = str_replace('_', '\\', $class); $class = str_replace('\\', '/', $class); if (strpos($class, '/')) { if ($namespace = explode('/', $class)) { switch ($namespace[0]) { case 'Annex': if (file_exists($file = __DIR__.'/src/'.$class.'.php')) { require $file; } break; } } } else { if (file_exists($file = __DIR__.'/app/models/'.$class.'.php')) { require $file; } else if (file_exists($file = __DIR__.'/app/controllers/'.$class.'.php')) { require $file; } else if (file_exists($file = __DIR__.'/app/utils/'.$class.'.php')) { require $file; } } }); Все вроде нормально, но в каждом классе нужно прописывать namespace ...; и обратиться к классу можно только так: $object = new Vendor\Namespace\ClassName; или так: use Vendor\Namespace\ClassName; $object = new ClassName; А мне нужно чтоб можно было без всего этого создать экземпляр класса.
Что то не совсем понятно, если вы используете пространство имен то надо обращаться к его элементам (или как там правильно) так: Код (PHP): $object = new Vendor\Namespace\ClassName; или так Код (PHP): use Vendor\Namespace\ClassName; $object = new ClassName; по другому вроде ни как.