Я пытаюсь выполнить основное приложение чата из http://socketo.me/docs/hello-world , однако я продолжаю получать эту ошибку. Я пытался перемещать файлы, но без успеха, но я совершенно уверен, что я не помещаю файлы в нужное место. Я совершенно новый для композиторов и websockets и psr-0, и мне еще многое предстоит узнать о PHP. Вот мое дерево путей и мои источники:
C:\wamp\www\ bin chat-server.php src MyChat Chat.php vendor {dependencies}+autoload.php composer.json composer.phar composer.lock
Chat.php
<?php namespace MyChat; require dirname(__DIR__) . '\vendor\autoload.php'; use Ratchet\MessageComponentInterface; use Ratchet\ConnectionInterface; class Chat implements MessageComponentInterface { protected $clients; function __construct() { $this->clients=new \SplObjectStorage(); } function onOpen(ConnectionInterface $conn) { $this->clients->attach($conn); echo "New connection! ({$conn->resourceId})\n"; } function onClose(ConnectionInterface $conn) { echo "Connection closed: {$conn->resourceId} \n"; $this->clients->detach($conn); } function onError(ConnectionInterface $conn, \Exception $e) { echo "An error has occured: {$e->getMessage()}. Closing connection... \n"; $conn->close(); } function onMessage(ConnectionInterface $from, $msg) { $receivers=count($this->clients)-1; foreach($this->clients as $client) { if($client!=$from) { $client->send($msg); } } } }
чат-server.php
<?php require dirname(__DIR__) . '\vendor\autoload.php'; use Ratchet\Server\IoServer; use MyChat\Chat; $server= IoServer::factory (new Chat() ,8080,'0.0.0.0');//0.0.0.0 is default, means accept all connections $server->run();
composer.json
{ "require": { "cboden/Ratchet": "0.2.*" }, "autoload": { "psr-0": { "MyChat": "src" } } }
Мой php.exe находится в папке C: \ wamp \ bin \ php \ php5.4.12. Я был бы очень благодарен за предложение, я не могу понять, где я ошибаюсь.