Files
oficial/setup/app.php

58 lines
1.2 KiB
PHP
Raw Normal View History

2021-03-25 23:33:37 -03:00
<?php
use DI\ContainerBuilder as Builder;
use DI\Bridge\Slim\Bridge;
include_once 'composer.php';
$folders = [
2022-03-07 09:59:51 -03:00
'settings',
2021-03-25 23:33:37 -03:00
'setups'
];
$builder = new Builder();
2023-06-22 23:15:17 -04:00
if (isset($__environment)) {
$builder->addDefinitions(['environment' => $__environment]);
}
2022-03-07 09:59:51 -03:00
foreach ($folders as $f) {
$folder = implode(DIRECTORY_SEPARATOR, [
__DIR__,
$f
]);
if (!file_exists($folder)) {
continue;
}
$files = new DirectoryIterator($folder);
foreach ($files as $file) {
if ($file->isDir() or $file->getExtension() != 'php') {
2021-03-25 23:33:37 -03:00
continue;
}
2022-03-07 09:59:51 -03:00
$builder->addDefinitions($file->getRealPath());
2021-03-25 23:33:37 -03:00
}
}
$container = $builder->build();
$app = Bridge::create($container);
2022-03-07 09:59:51 -03:00
if ($app->getContainer()->has('base_url') and $app->getContainer()->get('base_url') != '') {
$app->setBasePath($app->getContainer()->get('base_url'));
}
2021-03-25 23:33:37 -03:00
$app->addRoutingMiddleware();
foreach ($folders as $folder) {
$filename = implode(DIRECTORY_SEPARATOR, [
__DIR__,
$folder,
'middleware.php'
]);
if (!file_exists($filename)) {
continue;
}
include_once $filename;
}
$app->addErrorMiddleware(true, true, true);
include_once 'database.php';
include_once 'router.php';
2023-06-22 23:15:17 -04:00
return $app;