SiteWeaver_CMS/config/bootstrap.php

33 lines
658 B
PHP
Raw Normal View History

2026-09-09 23:58:20 +00:00
<?php
2026-09-10 19:36:00 +00:00
/**
* File: config/bootstrap.php
*
* Author: Funky Waddle
* Date: 2026-09-10
*
* Purpose:
* Bootstrap configuration and DI container.
*/
2026-09-09 23:58:20 +00:00
declare(strict_types=1);
require __DIR__ . '/../vendor/autoload.php';
$dotenv = Dotenv\Dotenv::createImmutable(__DIR__ . '/..');
$dotenv->safeLoad();
$mergedEnv = $_ENV + $_SERVER;
use SiteWeaver\Core\Container;
2026-09-09 23:58:20 +00:00
use SiteWeaver\Core\Config;
2026-09-10 19:17:19 +00:00
use SiteWeaver\Core\Router;
2026-09-09 23:58:20 +00:00
$container = new Container();
2026-09-10 19:17:19 +00:00
// Register core services
$router = new Router();
$container->add('router', $router);
2026-09-09 23:58:20 +00:00
$container->add('config', function () use ($mergedEnv) {
return new Config($mergedEnv);
});
return $container;