- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试根据 YouTube 中的教程创建基本的 websocket 聊天,但在运行时我在终端中遇到了这个错误
php bin/server.php
Fatal error: Interface 'Ratchet\MessageComponentInterface' not found in /var/www/html/websocket/bin/chat.php on line 6
我的chat.php代码如下:
<?php
namespace MyApp;
use Ratchet\MessageComponentInterface;
use Ratchet\ConnectionInterface;
class chat implements MessageComponentInterface
{
protected $clients;
public function __construct()
{
$this->clients=new \SplObjectStorage;
}
public function onOpen(ConnectionInterface $conn)
{
$this->clients->attach($conn);
}
public function onClose(ConnectionInterface $conn)
{
$this->clients->detach($conn);
}
public function onMessage(ConnectionInterface $conn,$msg)
{
foreach($this->clients as $client){
if($client !==$conn){
$client->send($msg);
}
}
}
public function onError(ConnectionInterface $conn, \Exception $e)
{
echo "the following error occured: ".$e->getMessage();
$conn->close();
}
}
server.php 的代码:
<?php
require 'chat.php';
require __DIR__ .'/vendor/autoload.php';
use Ratchet\Server\IoServer;
use Ratchet\Http\HttpServer;
use Ratchet\WebSocket\WsServer;
$server=IoServer::factory(new HttpServer(new WsServer (new chat())) , 8080);
$server->run();
如有任何帮助,我们将不胜感激。
最佳答案
在使用 Ratchet\MessageComponentInterface
之前包含 autoload.php 文件,该文件具有自动加载的所有定义。
在定义命名空间后立即包含此代码片段:
需要目录名(__DIR__) 。 '/vendor/autoload.php';
关于php - 如何纠正 [PHP fatal error : Interface 'Ratchet\MessageComponentInterface' not found ] in ratchet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34378161/
在我的 Laravel 5.7 应用程序中,我将 MessageComponentInterface 用于聊天应用程序,其类为 clients = new \SplObjectStorage;
我在我的 symfony 2.8 项目中使用 Ratchet websocket 库。 我的问题是如何定义存在于另一个 Controller 方法中的实体管理器。 class WesocketCont
标题令人困惑。基本上,我无法在不属于框架的类中访问 Laravel 的实用程序。 错误是:Call to a member function connection() on null in C:\xa
在此处的文档中 http://socketo.me/docs/有 2 个示例 - 一个是简单的聊天应用程序( http://socketo.me/docs/hello-world ),它使用 Mess
我正在尝试根据 YouTube 中的教程创建基本的 websocket 聊天,但在运行时我在终端中遇到了这个错误 php bin/server.php Fatal error: Interface '
在我的 Laravel 5.7 应用程序中,我使用一些在线文档安装了 cboden/ratchet composer.json : "type": "project", "requir
我是一名优秀的程序员,十分优秀!