41 lines
936 B
PHP
41 lines
936 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
// config/config.php
|
|
|
|
require_once BASE_PATH . '/vendor/autoload.php';
|
|
|
|
use Dotenv\Dotenv;
|
|
|
|
// Load .env file
|
|
$dotenv = Dotenv::createImmutable(BASE_PATH);
|
|
$dotenv->load();
|
|
|
|
if (!$_ENV['APP_URL']) {
|
|
http_response_code(500);
|
|
echo 'Configuration manquante : définis APP_URL ou APP_URL dans le .env';
|
|
exit;
|
|
}
|
|
|
|
// Normalise: toujours un trailing slash unique
|
|
define('APP_URL', rtrim($_ENV['APP_URL'], '/') . '/');
|
|
|
|
// (Optionnel) Expose dans $_ENV si besoin
|
|
$_ENV['APP_URL'] = APP_URL;
|
|
|
|
/**
|
|
* Helper pour construire des liens absolus propres.
|
|
* url('ressources/user/login.php')
|
|
* url('api/items', ['page'=>2])
|
|
*/
|
|
if (!function_exists('url')) {
|
|
function url(string $path = '', array $qs = []): string
|
|
{
|
|
$u = APP_URL . ltrim($path, '/');
|
|
if ($qs) {
|
|
$u .= (str_contains($u, '?') ? '&' : '?') . http_build_query($qs);
|
|
}
|
|
return $u;
|
|
}
|
|
}
|