thinkphp5.0报错Class 'think\worker\Ser
? 今天在thinkphp 5.0上使用workman 参照官网教程步骤如下 安装think-worker 1.0.*版本 composer require topthink/think-worker 1.0.*
? 使用方法 namespace appindexcontroller; use thinkworkerServer; class Worker extends Server { protected $socket = 'http://0.0.0.0:2346'; public function onMessage($connection,$data) { $connection->send(json_encode()); } } ? 在应用根目录增加入口文件 server.php #!/usr/bin/env php <?php define('APP_PATH',__DIR__ . '/application/'); define('BIND_MODULE','index/Worker'// 加载框架引导文件 require __DIR__ . '/thinkphp/start.php'; ? 在命令行启动服务端 php server.php start ? linux下面可以支持下面指令 php server.php start|stop|status|restart|reload ? 执行php server.php start后报错 [thinkexceptionErrorException] Class 'thinkworkerServer' not found ? 找了一些资料,说的是composer问题、大小写问题等等,都没有解决 报错原因分析:没有加载到类thinkworkerServer 解决办法: 既然没有加载到这个类,那我加载一下不就行了,修改server.php server.php文件代码: 加载composer autoload文件 require __DIR__ . '/vendor/autoload.php'; require __DIR__ . '/thinkphp/start.php'; ? 保存后,执行php server.php start,出现如下内容: ----------------------- WORKERMAN ----------------------------- Workerman version:3.5.30 PHP version:5.6.9 ------------------------ WORKERS ------------------------------- worker listen processes status none http:0.0.0.0:2346 4 [ok] ? 成功开启websocket服务,问题解决。 ? 参考文档: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |