PHP Fatal error: Class 'MyApp\Chat' nicht gefunden in /MyApp/chat-server.php
Ich versuche zu laufen mit der Knarre-Anwendung demo, aber ich kann nicht führen Sie die Datei
Dies ist meine Datei-Struktur
/var/www/src/MyApp/
/var/www/src/MyApp/chat.php
/var/www/src/MyApp/chat-server.php
<?php verwenden Sie die Ratsche\Server\IoServer; verwenden Sie die Anwendung\Chat; #require "chat.php"; erfordern "vendor/autoload.php'; $server = IoServer::factory( die neue Chat(), 8080 ); $server->run();
/var/www/src/MyApp/composer.json
{ "autoload": { "psr-0": { "MyApp": "SRK" } }, "require": { "cboden/Ratsche": "0.3.*" } }
Vendor Ordner ist vorhanden in diesem Ort
/var/www/src/MyApp/vendor/
Immer, wenn ich die Ausführung der chat-server die Datei im terminal habe ich die folgenden Fehler
PHP Fatal error: Class 'MyApp\Chat' not found in /MyApp/chat-server.php
Bitte helfen Sie mir, wie Sie zum beheben dieses
Hinweis: Das komplette code-details gibt es auf dieser Seite
http://socketo.me/docs/hello-world
Diese Frage wurde aber immer noch keine Antwort für diese Frage zu
Klasse 'MyChat\Chat' not found in C:\wamp\www\bin\chat-server.php
InformationsquelleAutor der Frage Sundar | 2014-04-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Haupt-Pfad für das automatische laden ist die Lage des Komponisten.json-Datei, also wenn das Leben in
/var/www/src/MyApp/
das autoloading wird das Land als Basis nutzen.In Ihrem Fall, Sie sagen die
MyApp
- namespace finden Sie in dersrc
- Verzeichnis (das bedeutet/var/www/src/MyApp/src
). Das stimmt nicht, da die Datei/var/www/src/MyApp/src/MyApp/Chat.php
existiert nicht.Lösen können Sie dieses Problem in 3 verschiedene Möglichkeiten:
composer.json
- Sie können bewegen Sie diecomposer.json
Datei zu/var/www
um in der Lage sein zu verwenden, als Basis;"autoload": { "psr-4": { "MyApp\\": "" } }
;Reorganisation Ihrer Dateien - Sie können auch ändern, die Datei-Struktur:
InformationsquelleAutor der Antwort Wouter J
Wenn Sie nicht über die Komponisten.json-Datei und die vendor-Ordner im Stammverzeichnis, dann funktioniert es nicht. Auch, berühren Sie nicht den vendor Ordner (und Unterordner). Die Ordnerstruktur muss wie folgt sein:
Schließlich, nach der Aktualisierung der Komponist.json, stellen Sie sicher, dass führen Sie ein update aus:
Diese Weise wird es funktionieren.
InformationsquelleAutor der Antwort dearsina
Haben Sie zu erwähnen, Base Pfad der Klassen, die müssen geladen werden:
Und führen
InformationsquelleAutor der Antwort Jaskaran Singh
Versuchen autoloading die Dateien zuerst mit:
Wenn es dann immer noch nicht funktioniert, dann folgende Zeile
require 'chat.php';
nur am Anfang derchat-server.php
- Datei. Es funktionierte für mich.InformationsquelleAutor der Antwort Pransh Tiwari
Ich Rang mit diesem Problem seit Stunden und fand, dass ich fehlen ein paar Pakete. Ich war in der Lage, es zu beheben mit diesem Befehl:
Hier ist ein Bild von dem, was ich sah nach der Ausführung:
installierte Pakete
Hoffe, das hilft!
InformationsquelleAutor der Antwort Peter Binder
In meinem Fall, nachdem er einen halben Tag merkte ich den Fehler war, denn ich vermisste diese Zeile:
InformationsquelleAutor der Antwort Amir No-Family