Definitiv, ich selbst Ich neige dazu, ein Framework ein wenig zu "biegen" und es gibt immer einen Weg, nicht immer die beste Lösung. Ich gebe hier nicht eine ganze Implementierung, nur in eine Richtung zeigend, das könnte für dich funktionieren.
Sie können Laravel der Basisanwendungsklasse Illuminate\Foundation\Application
, die enthält $environmentFile
Variable Speicherumgebung Datei geladen während appplication Bootstrap oder möglicherweise überschreiben Funktion loadEnvironmentFrom($file)
oder environmentFile()
verlängern. Die ganze Logik liegt bei dir.
Also im Grunde alles was Sie brauchen, um zu tun, der Lage sein, zu „spielen“ mit .env
Laden ist ...
eine neue Anwendungsklasse anlegen erstreckt Laravel eint:
namespace MyNamespace;
...
use Illuminate\Foundation\Application as App;
/**
* I'm doing alots of magic with .env in this class
*/
class Application extends App
{
...
/**
* The environment file to load during bootstrapping.
*
* @var string
*/
protected $environmentFile = '.env.main';
...
}
Und jetzt, weil wir eine neue bootstraping Klasse haben, müssen wir Laravel sagen, wir wollen es verwenden. Sie müssen also bootstrap/app.php
Datei in Punkt ändern, wenn eine neue Instanz erstellt wird:
...
$app = new MyNamespace\Application(
realpath(__DIR__.'/../')
);
...
Hinweis: Für Inspiration, die ich wirklich empfehlen Ihnen, zu betrachten Illuminate\Foundation\Application
Klasse.
Nicht sicher über Ihr Problem, aber ich verwende Kommentare in .env-Datei für den gleichen Zweck, überprüfen Sie [diese Frage] (http://stackoverflow.com/questions/32368016/how-to-comment-in-laravel-env (Datei) –
Es war nicht das, was ich suche, aber danke für Ihre Antwort sowieso. – AlexZai