php-slim4-server.index.mustache Maven / Gradle / Ivy
licenseInfo}}
/**
* NOTE: This class is auto generated by the openapi generator program.
* https://github.com/openapitools/openapi-generator
*/{{#apiInfo}}
require_once __DIR__ . '/vendor/autoload.php';
use {{invokerPackage}}\SlimRouter;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Message\ResponseInterface;
use OpenAPIServer\Mock\OpenApiDataMocker;
{{/apiInfo}}
// load config file
$config = [];
if (is_array($prodConfig = @include(__DIR__ . '/config/prod/config.inc.php'))) {
$config = $prodConfig;
} elseif (is_array($devConfig = @include(__DIR__ . '/config/dev/config.inc.php'))) {
$config = $devConfig;
} else {
throw new InvalidArgumentException('Config file missed or broken.');
}
$router = new SlimRouter($config);
$app = $router->getSlimApp();
/**
* The routing middleware should be added before the ErrorMiddleware
* Otherwise exceptions thrown from it will not be handled
*/
$app->addRoutingMiddleware();
/**
* Add Error Handling Middleware
*
* @param bool $displayErrorDetails -> Should be set to false in production
* @param bool $logErrors -> Parameter is passed to the default ErrorHandler
* @param bool $logErrorDetails -> Display error details in error log
* which can be replaced by a callable of your choice.
* Note: This middleware should be added last. It will not handle any exceptions/errors
* for middleware added after it.
*/
$app->addErrorMiddleware(
$config['slimSettings']['displayErrorDetails'] ?? false,
$config['slimSettings']['logErrors'] ?? true,
$config['slimSettings']['logErrorDetails'] ?? true
);
$app->run();