Wie weist man nicht gesetzten Go-Umgebungsvariablen Standardwerte zu?

DDD
Freigeben: 2024-11-17 06:34:03
Original
585 Leute haben es durchsucht

How to Assign Default Values to Unset Go Environment Variables?

Zuweisen von Standardwerten zu nicht gesetzten Go-Umgebungsvariablen

In Go können Umgebungsvariablen mit os.Getenv abgerufen werden, es bietet jedoch keine integrierte Möglichkeit dazu Weisen Sie einen Standardwert zu, wenn eine Umgebungsvariable nicht festgelegt ist.

Um diese Funktionalität zu erreichen, können Sie eine Hilfsfunktion erstellen, die prüft, ob eine Umgebungsvariable leer ist, und bei Bedarf einen Standardwert zuweist:

func getenv(key, fallback string) string {
    value := os.Getenv(key)
    if len(value) == 0 {
        return fallback
    }
    return value
}
Nach dem Login kopieren

Diese Funktion akzeptiert einen Schlüssel und einen Fallback-Wert als Argumente und gibt den Wert der Umgebungsvariablen zurück, falls vorhanden, oder den Fallback-Wert, wenn die Umgebungsvariable nicht gesetzt ist.

Zum Beispiel, wenn Sie eine haben Wenn Sie die Umgebungsvariable MONGO_PASS nicht setzen, können Sie ihr wie folgt den Standardwert „pass“ zuweisen:

mongoPassword := getenv("MONGO_PASS", "pass")
Nach dem Login kopieren

Alternativ können Sie den obigen Ansatz mit os.LookupEnv vereinfachen:

func getEnv(key, fallback string) string {
    if value, ok := os.LookupEnv(key); ok {
        return value
    }
    return fallback
}
Nach dem Login kopieren

Diese Funktion entspricht funktional getenv, verwendet jedoch stattdessen os.LookupEnv, das explizit angibt, ob eine Umgebungsvariable gesetzt ist oder nicht.

Das obige ist der detaillierte Inhalt vonWie weist man nicht gesetzten Go-Umgebungsvariablen Standardwerte zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage