TP5.1整合Workerman,实现WebSocket的demo,一路走来踩过的那些坑

博客介绍了ThinkPHP与Workerman整合时遇到的问题。因WorkerMan基于PHP命令行运行,与网页PHP环境不同,网页显示安装的扩展在命令行不一定安装。经检查发现缺少posix扩展,通过yum方式安装该扩展后,再次启动Workerman成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

官方手册是必须要看的:https://www.kancloud.cn/manual/thinkphp5_1/354134

一切准备就绪:

php think worker:gateway

Fatal error: Call to undefined function Workerman\posix_getpid()

 重点:与Apache+PHP或者Nginx+PHP的运行模式不同,WorkerMan是基于PHP命令行 PHP CLI 运行的,使用的是不同的PHP可执行程序,使用的php.ini文件也可能不同。所以在网页中打印phpinfo()看到安装了某个扩展,不代表命令行的PHP CLI也安装了对应的扩展。

正确的姿势是:php -m

经查证,确实缺少posix扩展。

服务器PHP的版本:

使用yum 方式安装posix扩展

yum install php72w-process

确认是否安装成功

再次启动Workerman,成功。

如果你也在整合过程中遇到问题,欢迎留言探讨 

 

参考:

[1].ThinkPHP和Workerman整合实现Socket通信Demo 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值