【问题标题】:Unable to load dynamic library 'php_wincache.dll'?无法加载动态库“php_wincache.dll”?
【发布时间】:2019-01-03 09:45:54
【问题描述】:

因为我已经使用 ASP.NET,所以我决定在 IIS 上使用 PHP,我使用 Wep PI 安装它,但是当我尝试安装 Composer 时,由于 PHP 设置错误而失败。

我尝试在 php.ini 中将 extension_dir 更改为绝对且未注释的 php_wincache 扩展名,但我的解决方案均无效

C:\Program Files (x86)\iis express\PHP\v7.2\php.exe

你的命令行 PHP 使用的 php.ini 是:C:\Program Files (x86)\iis express\PHP\v7.2\php.ini

您的 php.ini 中的设置可能会导致问题:“extension_dir”值不正确或 dll 不存在。

程序输出: PHP 警告:PHP 启动:无法加载动态库 'php_wincache.dll'(已尝试:C:\Program Files (x86)\iis express\PHP\v7.2\ext\php_wincache.dll (%1 n'est pas une) application Win32 valide.), C:\Program Files (x86)\iis express\PHP\v7.2\ext\php_php_wincache.dll.dll (Le module spécifié est introuvable.)) 在 Unknown on line 0

【问题讨论】:

标签: php iis composer-php iis-express


【解决方案1】:

回答这个问题有点晚了。但我也面临同样的问题,并且能够以某种方式解决它。请按照以下步骤解决此问题。

第 1 步:为 PHP 安装 Windows 缓存扩展。

    You can install it from http://php.net/manual/en/wincache.installation.php
    Or you can use Web Platform Installer. (Please see the screenshot.)

第 2 步:安装后转到文件夹“Windows Cache for PHP”。复制 php_wincache.dll。

第 3 步:将复制的文件粘贴到您的 PHP/ext 位置。例如"C:/Program Files/PHP/v7.0/ext"。

现在您可以尝试再次安装 composer。

希望对你有所帮助。

【讨论】:

  • 我在更新我的 PHP 版本时遇到了同样的问题。我已经下载了 wincache.dll 并将其粘贴到我的 ext 文件中,但它仍然会抛出此错误 'Unable to load dynamic library 'php_wincache.dll' @rajk
  • 很好 - 谢谢。我使用 Web PI 安装了 PHP 的 Windows 缓存扩展(不是 IIS),它直接安装到 PHP 上,无需复制 DLL。确保选择正确的位数(x86 或 x64)。
【解决方案2】:

我也遇到了同样的问题,在PHP Manual上找到了答案。

7.0的wincache版本是为php7.dll而不是线程编译的 安全的 php7ts.dll。您可能需要编译 wincache 的源代码或 更改为非线程安全版本。

猜测是你安装了“线程安全”版本的 PHP,而你没有 WinCache 需要的 php7.dll。

【讨论】:

    猜你喜欢
    • 2012-01-26
    • 2019-04-03
    • 2016-08-25
    • 2017-03-03
    • 2017-07-29
    • 2019-07-30
    • 2018-07-30
    • 2019-03-19
    • 2019-03-22
    相关资源
    最近更新 更多