load(); // PSR-4 Autoloader for Services and Controllers spl_autoload_register(function ($class) { // Remove leading namespace separator $class = ltrim($class, '\\'); // Define namespace to directory mapping $prefixes = [ 'Services\\' => __DIR__ . '/src/Services/', 'Controllers\\' => __DIR__ . '/src/Controllers/', 'Middleware\\' => __DIR__ . '/src/Middleware/', ]; foreach ($prefixes as $prefix => $baseDir) { if (strpos($class, $prefix) === 0) { // Remove the prefix from the class $relativeClass = substr($class, strlen($prefix)); // Build the file path $file = $baseDir . str_replace('\\', DIRECTORY_SEPARATOR, $relativeClass) . '.php'; if (file_exists($file)) { require_once $file; return true; } } } return false; });