如何正确使用PHP 5.5 VERSON安装Libsodium。 我试图遵循指令https://paragonie.com/book/pecl-libsodium/read/00-intro.md#installing-libsodium
下面是我做的步骤:
转到http://windows.php.net/downloads/pecl/releases/libsodium/1.0.6/
下载“php_libsodium-1.0.6-5.5-nts-vc11-x64.zip”和提取文件。
在我的目录复制 “libsodium.dll” “C:\ Program Files文件(x86)的\ PHP \ V5.5” 在哪里 “的php.exe”
在我的目录 “:\程序文件(x86)\ PHP \ V5.5 \分机C” 复制 “php_libsodium.dll”
启用php.ini文件“扩展= php_libsodium.dll”
重新启动服务器
但是,当我写一个简单的PHP测试文件进行了测试:
<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
// hash the password and return an ASCII string suitable for storage
$hash_str = sodium_crypto_pwhash_str(
"mypassword",
SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE,
SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE
);
echo "hash: " . $hash_str;
?>
结果页面显示错误:
致命错误:调用未定义的函数sodium_crypto_pwhash_str()在C:\ PHP \ testLibsodium.php第7行
图书馆Libsodium似乎没有安装,因为它不知道的功能。 我需要什么样的事情做在PHP 5.5版安装PHP Libsodium? 非常感谢你。
更新:我已经安装了X86版本的@iann的建议,并运行此代码:
$storeInDatabase = \Sodium\crypto_pwhash_str(
"safasfdwr32sfdfas234",
SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE,
SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE
);
现在看来,功能正在被读,但我得到一个错误:
注意:未定义的常量SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE用途 - 假设“SODIUM_CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE”
注意:未定义的常量SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE用途 - 假设“SODIUM_CRYPTO_PWHASH_MEMLIMIT_INTERACTIVE”
警告:钠\ crypto_pwhash_str()预计参数2到长
捕获的致命错误:crypto_pwhash_str():无效的参数
这是否意味着我的libsodium安装正确,但为什么我得到一个错误? 再次感谢你。