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