Heim  >  Artikel  >  PHP-Framework  >  Die Rolle der .env-Datei in Laravel

Die Rolle der .env-Datei in Laravel

齐天大圣
齐天大圣Original
2020-12-11 22:01:472598Durchsuche

Ich frage mich, ob Sie jemals über diese Frage nachgedacht haben: Welche Rolle spielt diese .env-Datei, nachdem es nun eine Konfigurationsdatei gibt?

Sie müssen diese Erfahrung gemacht haben. Die lokale Umgebung und die Serverumgebung sind unterschiedlich, und einige Konfigurationswerte werden unterschiedlich sein, z. B. unterschiedliche Datenbankkonfigurationsinformationen, unterschiedliche Domänennamen usw. Dies führt zu einigen Problemen. Wenn Sie ein Versionskontrollsystem verwenden, ruft der Server den neuesten Code ab und die serverseitige Konfigurationsdatei wird zur lokalen Entwicklungsumgebung. Dann müssen Sie sie einzeln betrachten und dann ändern. Ist das nicht sehr mühsam? Es ist auch möglich, dass Ihre lokalen Konfigurationsinformationen von anderen Entwicklungspartnern gesehen werden (vielleicht sind Ihre lokalen Datenbankinformationen auch sehr wichtig und Sie möchten nicht, dass andere davon erfahren). Die Datei

.env soll dieses Problem lösen. Wir können dieselben Server- und lokalen Umgebungskonfigurationselemente in die Konfigurationsdatei einfügen und unterschiedliche Konfigurationselemente und vertrauliche Informationen in die .env-Datei einfügen. Beachten Sie außerdem, dass Sie die .env-Datei nicht im Versionskontrollsystem ablegen dürfen.

Außerdem sollten Sie beachten, dass sich im Stammverzeichnis auch eine .env.example-Datei befindet. Es wird allgemein empfohlen, diese Datei in einem Versionskontrollsystem abzulegen, um andere Entwickler darüber zu informieren, dass Sie eine Kopie dieser Datei erstellen und ihren Namen in .env ändern sollten. Stellen Sie dann die Werte entsprechend Ihrer eigenen Umgebung ein.

Wenn Sie wie ich sind, gibt es drei verschiedene Umgebungen: Entwicklungsumgebung, Testumgebung und Online-Umgebung. Dann sollten Sie auch eine weitere .env.testing-Datei erstellen. Diese Datei überschreibt die Werte in der .env-Datei, wenn PHPUnit-Tests ausgeführt oder Artisan-Befehle mit der Option --env=testing ausgeführt werden.

Superglobale Variable $_ENV

.env-Datei enthält alle aufgelisteten Variablen, die in die superglobale Variable $_ENV von PHP geladen werden, und der entsprechende Wert kann über diese Variable abgerufen werden.

Bestimmen Sie die aktuelle Systemumgebung

Die aktuelle Umgebung der Anwendung wird durch APP_ENV in der .env-Datei bestimmt. Sie können die Methode App::environment() verwenden, um den Wert dieser Option abzurufen. Wie zum Beispiel:

if ('local' == App::environment()) {
    // 本地环境
}


Das obige ist der detaillierte Inhalt vonDie Rolle der .env-Datei in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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