I Homecontroller Klasse von lib
Verzeichnis laden möchten:PSR-4 autoloading Probleme
root/
-lib/
--/HomeController.php
-vendor/
-composer.json
-index.php
Composer.json
"autoload": {
"psr-4": {
"Lib\\": "lib/"
}
}
HomeController.php
namespace Lib;
class HomeController {}
index.php
var_damp(new \Lib\HomeController.php);
Es findet die Klasse nicht.
Aber wenn ich in Controller-Verzeichnis setzen HomeController.php:
root/
-lib/
--/Controllers/HomeController.php
Und die Namespaces aktualisieren: index.php und HomeController.php zu:
namespace Lib\Controllers;
class HomeController {}
Es funktioniert perfekt.
Es ist seltsam, ich kann keine Dokumente finden, die darüber sprechen. Ich brauche keine zusätzlichen Verzeichnisse, in diesem Fall möchte ich die HomeController-Klasse direkt im Verzeichnis lib
.
Wie kann ich es funktioniert innerhalb lib
Ordner?
kann es sein, dass Sie den Befehl 'composer dumpautoload' nicht ausführen? –
Ich habe 'composer dump-autoload' versucht,' autoload_psr4.php' ist korrekt. Außerdem habe ich composer.lock entfernt und neu erstellt. Ich kann Autoload immer noch nicht verwenden. – Doc999tor