2016-05-20 15 views
1

finde ich habe ein Projekt, das ich versuche, es zu laufen, aber ich bin immer einen folgenden Fehler:PHP Fatal error: Class ‚Dotenv‘ nicht in

PHP Fatal error: Class 'Dotenv' not found in `/home/maras/Documents/eCodile/debtorcare/server/bootstrap/app.php on line 5` 

ich während versuchen, mit diesem Fehler zu kämpfen auszuführen a php artisan start Ich habe versucht, alle Abhängigkeiten neu zu installieren, aber es hat nicht funktioniert. Ich habe gerade versucht, einige Befehle auszuführen, die auf anderen ähnlichen Problemen basieren, die ich im Internet gefunden habe, aber alle von ihnen haben funktioniert. Ich habe versucht, das heißt:

composer require vlucas/phpdotenv --prefer-dist

Ive eine Datei .env bekam.

Dies ist eine Datei, in der Fehler gesetzt wird:

<?php 

require_once __DIR__.'/../vendor/autoload.php'; 

Dotenv::makeMutable(); 
Dotenv::load(__DIR__.'/../'); 
Dotenv::makeImmutable(); 

/* 
|-------------------------------------------------------------------------- 
| Create The Application 
|-------------------------------------------------------------------------- 
| 
| Here we will load the environment and create the application instance 
| that serves as the central piece of this framework. We'll use this 
| application as an "IoC" container and router for this framework. 
| 
*/ 

$app = new Laravel\Lumen\Application(
    realpath(__DIR__.'/../') 
); 

Ist es möglich, den Fehler mit der falschen Konfiguration einer Datenbank oder phpMyAdmin verbunden ist? Oder vielleicht habe ich .env an falscher Stelle platziert?

Ich versuche dieses Projekt in Entwicklung zu betreiben.

Antwort

1

Ich denke, die CWD wurde geändert, während Sie den Befehl ausführen. Stellen Sie sicher, dass composer.json, .env, "vendor/autoload.php" aus dem Projektstamm geladen werden kann.

vielleicht müssen Sie „Komponist Dump-Autoload“ nach der Dotenv Installation ausführen,

+0

In welcher Weise kann ich CWD überprüfen? –

+0

Ich habe 'composer dump-autoload' schon vorher versucht, aber es hat nicht geholfen –

0

Wie C9S vermuten lässt, überprüfen, um sicherzustellen, dass Sie eine vorhandene vendor/autoload.php mit so etwas wie geladen werden:

$vendor_audoload = __DIR__.'/../vendor/autoload.php'; 
print $vendor_audoload; 
if(file_exists($vendor_audoload)){ 
    print " Exists!"; 
} else { 
    print " Does not exist!"; 
}