hyperf中如何使用Swoole\Table
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,本篇文章给大家分享的是有关hyperf中如何使用Swoole\Table,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Swoole\Ta
千家信息网最后更新 2025年12月02日hyperf中如何使用Swoole\Table
本篇文章给大家分享的是有关hyperf中如何使用Swoole\Table,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
Swoole\Table的create需要在workStart之前,所以tcp服务启动之前,在server.php中配置SwooleEvent::ON_BEFORE_START监听事件
[ 'name' => 'tcp', 'type' => Server::SERVER_BASE, 'host' => '0.0.0.0', 'port' => 9503, 'sock_type' => SWOOLE_SOCK_TCP, 'callbacks' => [ SwooleEvent::ON_BEFORE_START => [\App\Tcp\ServerStartCallback::class, 'beforeStart'], SwooleEvent::ON_WORKER_START => [\App\Tcp\TcpServer::class, 'onWorkerStart'], SwooleEvent::ON_CONNECT => [\App\Tcp\TcpServer::class, 'onConnect'], SwooleEvent::ON_RECEIVE => [\App\Tcp\TcpServer::class, 'onReceive'], ] ]
在ServerStartCallback中实现Swoole\Table的初始化
column('fd', Table::TYPE_INT); $table->column('reactor_id', Table::TYPE_INT); $table->column('data', Table::TYPE_STRING, 64); $table->create(); $container = ApplicationContext::getContainer(); $server = $container->get(Server::class); $server->table = $table; }}在TCP建立连接接收消息的时候,进行fd的绑定
logger = $loggerFactory->get('log', 'default'); } public function onWorkerStart(SwooleServer $server, int $worker_id): void { } public function onConnect(SwooleServer $server, int $fd, int $fromId): void { $this->logger->debug($fd); } public function onReceive(SwooleServer $server, int $fd, int $fromId, string $data): void { $this->logger->debug($fd . ' - ' . $data); // 检测数据,如果返回的前4位字符为IMEI,则应该为设备绑定fd if (strpos($data, 'IMEI') === 0) { $imei = substr($data, 5); $server->table->set((string)$fd, [ 'reactor_id' => $fromId, 'fd' => $fd, 'data' => $imei ]); } $this->logger->debug($server->table->count()); }}以上就是hyperf中如何使用Swoole\Table,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
更多
知识
篇文章
实用
事件
字符
就是
工作会
数据
文章
时候
消息
看吧
知识点
行业
设备
详情
资讯
资讯频道
跟着
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
开服务器的好名字
软件开发项目目标书
建筑软件开发
微信聊天记录从服务器
网络安全题型简单
dbms管理服务器数据
网络安全的基本体系
vivo嵌入式软件开发面试
赵明渊数据库实验
苏州dell塔式服务器
宿州网络安全考试scse认证
网络安全经费财政部
apex最简单的服务器
数据库修改后多久可以同步
互联网科技公司上市的条件
SQL数据库编辑表格
博世汽车软件开发平台
软件开发专业的实习岗
qq是不是泄露了数据库
靖江小型网络技术保养
主题式数据库
方舟生存进化服务器最高等级
mysql数据库密码加密了
服务器为什么有别名
es数据库多少数据
深圳社交电商软件开发
服务器三秒一滴
京科联通网络技术有限公司概况
九阴真经服务器
远程数据库备份到本地打开