我在 Windows 7 x64 上使用 Uwamp 3.1.0 和 PHP 5.6.18 时遇到了同样的问题。
部分解决方案已在此处得到解答如何在 UwAmp CLI 中启用“openssl”?,但还有更多:)
Uwamp 的问题(如果我们没有提到他们应该已经回答了这个线程,而不是我们,用户:))是因为它使用的是自定义php_uwamp.ini文件,并且“正常” php.ini从.. /bin/php/php-xxx/(仍然被许多 PHP 工具使用),实际上../bin/apache/php.ini文件中有 php.ini 文件,所以我通过使用扩展路径解决了这个问题文件。
问题是ext文件夹的相对路径,所以只需输入绝对路径就可以解决问题(对我来说也是如此)。
所以要写出确切的步骤:
- 找到您使用的 PHP 版本的 UwAmp PHP“bin”文件夹(例如 C:/Uwamp/bin/php/php-5.6.18/)
- 找到“自定义 Uwamp” php_uwamp.ini文件并将其复制到与 php.ini 相同的文件夹中
- 打开该重复的 php.ini 文件并找到以下行:
;extension_dir = "ext" 或 ; extension_dir = "{PHPEXTPATH}"
- 现在在 UwAmp Apache“bin”文件夹中找到其他已经存在的php.ini文件((例如 C:/Uwamp/bin/apache/php.ini)并找到带有绝对路径的行(示例)
; extension_dir = "C:/UwAmp/bin/php/php-5.6.18/ext"
并通过取消注释将其使用到您的新文件 C:/UwAmp/bin/php/php-5.6.18/php.ini 中,当然检查绝对路径是否正确。
所以现在你在 PHP“bin”文件夹中的 php.ini 文件应该是这样的:
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "{PHPEXTPATH}"
; On windows:
;extension_dir = "ext"
extension_dir = "C:/UwAmp/bin/php/php-5.6.18/ext"