Undefinierte Variable: _ENV in Laravel 5.3

8

Ich habe mein System mit Laravel 5.3 getestet:

In den letzten paar Wochen hat mein System gut funktioniert. Seit dem letzten Wochenende habe ich den gleichen Fehler TWICE wie folgt festgestellt: -

  

Hinweis: Undefinierte Variable: _ENV in C: \ NewFolder \ htdocs \ Projekt \ Hersteller \ vlucas \ phpdotenv \ src \ Loader.php in Zeile 303

     

Warnung: array_key_exists () erwartet Parameter 2 als Array, NULL in C: \ NewFolder \ htdocs \ project \ vendor \ vlucas \ phpdotenv \ src \ Loader.php in Zeile 303

Loader.php:

%Vor%

.env

%Vor%
  • Als der oben genannte Fehler beim ersten Mal auftrat (als ich die Login-Seite geladen habe), löschte ich meinen Browser-Cache und den Verlauf, das System konnte wieder normal arbeiten.
  • Als derselbe Fehler beim zweiten Mal (mitten im Testprozess) auftauchte, habe ich das gleiche wie beim ersten Mal getan, Cache und Verlauf des Browsers gelöscht, aber es konnte nicht helfen, der Fehler wird immer noch angezeigt, nachdem ich meinen Browser aktualisiert habe. Also habe ich php artisan view:clear und php artisan cache:clear ausgeführt, konnte aber immer noch nicht normalisieren.

Jeder hat eine Idee, warum passiert das? Danke

Die Version, die ich verwendet habe:

  • OS: Fenster 7
  • Browser: Mozilla Firefox
  • PHP: 7.1.1
  • Laravel: 5.3
beeee 01.02.2018, 05:13
quelle

3 Antworten

2

Der einzige Grund, warum die $_ENV super-global nicht definiert werden sollte, ist, wenn sie aus dem variables_order Konfiguration.

Überprüfen Sie Ihre php.ini (oder andere relevante Konfigurationsdateien) für die Eigenschaft variables_order . Wenn $_ENV festgelegt werden soll, muss ein "E" enthalten. Die Standardeinstellung ist

%Vor%

Wenn Sie Probleme beim Auffinden der Konfiguration haben, sollte ein <?php phpinfo() ?> dump auch den Speicherort der Wert- und Konfigurationsdateien anzeigen.

variables_order ist eine PHP_INI_PERDIR Moduseinstellung, dh ...

  

Der Eintrag kann in php.ini , .htaccess , Ссылка oder .user.ini ( seit PHP 5.3)

Die Zeichen stehen für

  • E - $_ENV
  • G - $_GET
  • P - $_POST
  • C - $_COOKIE
  • S - $_SERVER
Phil 01.02.2018 05:26
quelle
0

Nach einigem Suchen und Recherchen fand ich einige ähnliche Probleme von Github # 8191 .

>

Ich kann den Fehler durch Ausführen von php artisan config:cache beheben. Bedeutet, dass Laravel die Umgebungsvariable aus der Konfigurationsdatei liest, anstatt die Umgebungsvariable direkt aus .env

zu lesen     
beeee 09.02.2018 02:28
quelle
0

Dies ist eindeutig ein Fehler außerhalb des Bereichs Ihres Codes; Es ist eine Änderung mit Ihren Abhängigkeiten oder Ihrer Systemkonfiguration. Sie sollten in Betracht ziehen, den Abhängigkeitscache neu zu erstellen und vor dem Startdatum des Fehlers auf die alte Version der Abhängigkeiten zurückzusetzen.

Wie @MahdiYouesi sagte, fang mit der phpdotenv Abhängigkeit an.

    
New Alexandria 11.02.2018 15:34
quelle