XAMPP PHP 7.2 上未加载钠

Amp*_*ier 5 php xampp libsodium

嘿,由于某种原因,当我使用 XAMPP PHP 7.2 时,所有的钠函数都不起作用。当我运行时,print_r(get_loaded_extensions());它不会在列表中显示钠。当我访问http://php.net/manual/en/sodium.installation.php 时,它说不需要安装它们是核心的一部分。所以我去了我的php.ini配置文件并确保它没有禁用钠,它说extension=php_sodium.dll。我去控制台仔细检查他们是否有任何错误,没有。这很奇怪,因为Argon2i工作正常。Argon2i 常量都已定义,当在password_hash()函数中使用时,它生成密码哈希没有问题。我使用 Windows 作为我的操作系统。还有什么可能导致这样的事情吗,任何帮助都会很好。提前致谢。

小智 9

对于 Windows XAMPP PHP 7.2.4,要更正错误:

PHP警告:PHP启动:无法加载动态库'sodium'(试过:C:\xampp\php\ext\sodium(找不到指定的模块。),C:\xampp\php\ext\php_sodium.dll (找不到指定的模块。))在第 0 行的未知中

apache/bin/(Apache模块)中必须有一份 php/libsodium.dll(PHP扩展)。假设但未测试,它必须是同一个文件。

假设 php/libsodium.dll 和 php/ext/php_sodium.dll 是相同的构建,这是新安装的 XAMPP 7.2.4 的情况,安装是:

1. Add "extension=sodium" to php.ini (no quotes)
2. Copy php/libsodium.dll to apache/bin/
3. Restart Server
Run Code Online (Sandbox Code Playgroud)


Als*_*oja 7

从 C:\xampp\php\ -> Dynamic Extensions下打开 php.ini 文件并添加

extension=sodium
Run Code Online (Sandbox Code Playgroud)


jim*_*105 5

我遇到了同样的问题,但重新安装 XAMPP 7.2 没有帮助。
最后,我返回到 XAMPP 7.1.14,然后另外安装了钠,它起作用了。

  1. 安装 XAMPP (xampp- win32-7.1.14-0-VC14 )
  2. 下载名为 php_libsodium-2.0.9- 7.1-ts-vc14-x86 .zip的 libsodium
  3. 将 php_sodium.dll 重命名为 php_libsodium.dll,然后将其放入 C:\xampp\php\ext
  4. 将 libsodium.dll 放入 C:\xampp\apache\bin
  5. 添加到php.ini:extension=php_libsodium.dll

我知道回滚不是一个好主意。
但至少它对我有用。


小智 5

这也适用于 wamp

使用以下命令检查 PHP 模块是否有可用的钠

cmd> php -m
cmd> php --ri sodium
Run Code Online (Sandbox Code Playgroud)

如果钠未列出,则转到 /php/php.ini 并搜索“;extension=sodium”并删除“;” 你就可以走了


Jea*_*eau 4

您确定编辑了正确的 php.ini 吗?

从 PHP 7.2 开始,ini 文件(至少在我的 Windows PC 上),加载扩展的语法现在是而extension=modulename不是extension=php_modulename.dll.