一、选择rdkafka

首先要看版本兼容问题,我的是Laravel5.6,PHP是7.3.13,所以需要下载兼容此的rdkafka,去Packagist

搜索 kafka ,我用的是Packagist选择里面0.10.5版本,

二、安装rdkafka

在Laravel 项目中,通过 Composer 安装enqueue/rdkafka扩展包。在项目根目录下的composer.json文件中,添加以下依赖项:

"require": {"enqueue/rdkafka": "^0.10.18"}

也可以直接在项目目录下执行:

composer require enqueue/rdkafka:0.10.18

问题一:PHP 扩展(解决方法)

如果在安装enqueue/rdkafka包时遇到了问题,原因是缺少 PHP 扩展。错误信息指出需要ext-rdkafka扩展,具体要求是版本 3.0.3 或 4.0 或更高版本。

要解决这个问题,就需要在 PHP 环境中安装或启用rdkafka扩展

【window】

去官网下载扩展包:https://pecl.php.net/package/rdkafka

我这里选择的是4.0.3,点进去有PHP版本可以选择,我的PHP版本是7.3 就选择7.3的, 如果是32位就选x86的版本, 选NTS!!!这里已经试过TS版本在windows会有问题

下载后解压里面有两个 DLL文件

(1)复制librdkafka.dll 到php\php7.3.4nts\目录下(注意!注意!注意!不是ext文件夹)(根据自己php目录来)

(2)复制php_rdkafka.dll放到 php\php7.3.4nts\ext目录下

(3)修改php.ini:在 php.ini 文件中添加 extension=rdkafka