Actualiser api/lib/env.php
CI / PHP Syntax Check (push) Has been cancelled
CI / JavaScript Lint (push) Has been cancelled
CI / Docker Build Test (push) Has been cancelled
CI / Validate Translation Files (push) Has been cancelled
CI / Auto-merge develop → main (push) Has been cancelled
CI / Create GitHub Release (push) Has been cancelled
Security Scan (Trivy) / Trivy — Docker image scan (push) Has been cancelled
Security Scan (Trivy) / Trivy — Filesystem scan (push) Has been cancelled
CI / PHP Syntax Check (push) Has been cancelled
CI / JavaScript Lint (push) Has been cancelled
CI / Docker Build Test (push) Has been cancelled
CI / Validate Translation Files (push) Has been cancelled
CI / Auto-merge develop → main (push) Has been cancelled
CI / Create GitHub Release (push) Has been cancelled
Security Scan (Trivy) / Trivy — Docker image scan (push) Has been cancelled
Security Scan (Trivy) / Trivy — Filesystem scan (push) Has been cancelled
This commit is contained in:
+10
-5
@@ -2,7 +2,6 @@
|
|||||||
/**
|
/**
|
||||||
* EverShelf — environment variable loader (.env).
|
* EverShelf — environment variable loader (.env).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function loadEnv(): array {
|
function loadEnv(): array {
|
||||||
static $cache = null;
|
static $cache = null;
|
||||||
if ($cache !== null) {
|
if ($cache !== null) {
|
||||||
@@ -22,14 +21,20 @@ function loadEnv(): array {
|
|||||||
}
|
}
|
||||||
return $cache;
|
return $cache;
|
||||||
}
|
}
|
||||||
|
|
||||||
function env(string $key, string $default = ''): string {
|
function env(string $key, string $default = ''): string {
|
||||||
$vars = loadEnv();
|
$vars = loadEnv();
|
||||||
return $vars[$key] ?? $default;
|
if (isset($vars[$key]) && $vars[$key] !== '') {
|
||||||
|
return $vars[$key];
|
||||||
|
}
|
||||||
|
// Fallback to system/Docker environment variables (e.g. set via Portainer)
|
||||||
|
$sysVal = getenv($key);
|
||||||
|
if ($sysVal !== false && $sysVal !== '') {
|
||||||
|
return $sysVal;
|
||||||
|
}
|
||||||
|
return $default;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Push a single key into the in-memory env cache (after .env write). */
|
/** Push a single key into the in-memory env cache (after .env write). */
|
||||||
function envCacheSet(string $key, string $value): void {
|
function envCacheSet(string $key, string $value): void {
|
||||||
loadEnv();
|
loadEnv();
|
||||||
// Force reload on next call — callers should use loadEnv() return for batch updates
|
// Force reload on next call — callers should use loadEnv() return for batch updates
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user