宝塔linux安装运行workman程序出现undefined function pcntl_signal,pcntl_fork等错误

记录一下学习workman遇到的错误:

之前已经在服务器上安装好了php环境,也运行成功了一遍workerman的实例,但今天突然发现workerman程序不能运行了

一开始遇到这个错误以为是pcntl扩展没装,但用php -m命令发现已经安装了pcntl:

之后百度找了一大圈,workerman文档也找了,解决不了,最后突然想到可能是宝塔面板安装的php会把这些函数禁用了,所以找到宝塔面板的php设置:

找到被报错未定义的函数:

 

删除就可以了,可能需要解除的不止这一个函数的禁用,所以再出现与 pcntl扩展相关的函数未定义的情况可以看看是否是被宝塔禁用了。

之后成功运行:

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您想使用 Workerman 作为 WebSocket 客户端,可以按照以下步骤操作: 1. 安装 Workerman 首先需要安装 Workerman,可以使用 Composer 进行安装: ``` composer require workerman/workerman ``` 2. 创建客户端脚本 在您的项目中创建一个 PHP 脚本,例如 `client.php`。 在脚本中引入 Workerman: ```php require_once __DIR__ . '/vendor/autoload.php'; use Workerman\Worker; use Workerman\Connection\AsyncTcpConnection; ``` 接下来,可以创建一个异步 TCP 连接对象,用于连接 WebSocket 服务器: ```php $ws_connection = new AsyncTcpConnection('ws://your.websocket.server'); ``` 在连接对象创建后,可以设置一些回调函数用于处理连接事件。例如: ```php // 连接成功回调 $ws_connection->onConnect = function() { echo "WebSocket 连接成功\n"; // 发送消息 $ws_connection->send('Hello, WebSocket Server!'); }; // 接收消息回调 $ws_connection->onMessage = function($data) { echo "收到消息:$data\n"; }; // 连接关闭回调 $ws_connection->onClose = function() { echo "WebSocket 连接关闭\n"; }; // 连接错误回调 $ws_connection->onError = function($e) { echo "WebSocket 连接错误:$e\n"; }; ``` 最后,启动客户端并开始连接: ```php Worker::runAll(); ``` 完整的客户端代码示例: ```php <?php require_once __DIR__ . '/vendor/autoload.php'; use Workerman\Worker; use Workerman\Connection\AsyncTcpConnection; // 创建异步 TCP 连接对象 $ws_connection = new AsyncTcpConnection('ws://your.websocket.server'); // 连接成功回调 $ws_connection->onConnect = function() { echo "WebSocket 连接成功\n"; // 发送消息 $ws_connection->send('Hello, WebSocket Server!'); }; // 接收消息回调 $ws_connection->onMessage = function($data) { echo "收到消息:$data\n"; }; // 连接关闭回调 $ws_connection->onClose = function() { echo "WebSocket 连接关闭\n"; }; // 连接错误回调 $ws_connection->onError = function($e) { echo "WebSocket 连接错误:$e\n"; }; // 启动客户端并开始连接 Worker::runAll(); ``` 注意:上述代码仅为示例,您需要将 `ws://your.websocket.server` 替换为您实际的 WebSocket 服务器地址。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值