在Windows上为PHP XAMPP安装librdkafka

4
请帮我在Windows XAMPP上安装librdkafka以进行PHP开发。
PHP版本:7.1.12,x86,线程安全,MSVC14
我从https://pecl.php.net/package/rdkafka/3.0.5/windows下载了兼容的软件包。
php_rdkafka.dll复制到我的php xampp的ext文件夹中,将librdkafka.dll复制到System32文件夹(也复制到ext文件夹)。
但是扩展程序无法工作。我收到以下错误:

PHP警告:PHP启动时无法加载动态库'C:\xampp\php\ext\php_rdkafka.dll' - 未找到指定的模块。位于未知行。

我怀疑librdkafka没有正确安装。

1
我已经点赞了,但也许这个链接可以帮到你:https://stackoverflow.com/questions/47589688/the-program-cant-start-because-php7-dll-is-missing-from-your-computer/47831555#47831555 - Syed Waqas Bukhary
感谢您的建议。 - Ligo George
2个回答

3

对我来说,接受的答案并没有起作用。相反,我按照以下步骤安装了依赖项:

  • https://pecl.php.net/package/rdkafka下载库。
  • 将文件librdkafka.dll提取到根PHP目录中(与php.exe在同一级别,例如C:\xampp\php)。
  • 将文件php_rdkfaka.dll提取到ext文件夹中:C:\xampp\php\ext
  • 将行extension=php_rdkafka.dll添加到php.ini中。
  • 重新启动服务器。

注意:您将下载的库中,会找到一个带有官方文档链接的README.md


我不知道第一个答案是否适用于我,但这个方法确实对我的系统影响较小,并且效果非常好。谢谢! - undefined

2
我通过以下步骤使其工作。
  1. 如果是x86,请将librdkafka.dll复制到C:\Windows\SysWOW64,否则请复制到C:\Windows\System32。不要同时复制到这两个文件夹。
  2. 然后在命令提示符中运行regsvr32 librdkafka.dll
  3. 然后将php_rdkafka.dll复制到您的PHP的ext文件夹中。
  4. 然后在您的php.ini文件中添加extension=php_rdkafka.dll
  5. 重启PHP,完成!!!

1
我已经尝试过同样的操作,但是出现了以下警告(PHP Warning: PHP Startup: Unable to load dynamic library 'C:\xampp\php\ext\php_rdkfaka.dll' (tried: C:\xampp\php\ext\php_rdkfaka.dll (The specified module could not be found.), C:\xampp\php\ext\php_C:\xampp\php\ext\php_rdkfaka.dll.dll (The specified module could not be found.)) in Unknown on line 0)。同时,当我运行 PHP 文件时,出现了以下错误:Uncaught Error: Class 'RdKafka\Producer' not found。 - Raghav

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接