一、选择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