问题描述
我的环境:
- XAMPP版本7.2.8
- PHP 7.2.8(这是在安装XAMPP时一起安装的。)
- Apache 2.4.34(在安装XAMPP时将其安装在一起。)
我是Laravel的新手。我制作了Laravel项目文件夹,并执行了命令PHP artisan key:generate
来生成app_key。
但是我收到以下错误:
PHP Warning: PHP Startup: Unable to load dynamic library 'mcrypt' (tried: C:\xampp\PHP\ext\mcrypt,C:\xampp\PHP\ext\PHP_mcrypt.dll) in UnkNown on line 0
我检查了mcrypt
是否已通过以下代码加载。
<?PHP
if(function_exists('mcrypt_encrypt')) {
echo "mcrypt is loaded!";
} else {
echo "mcrypt isn't loaded!";
}
?>
它回答了"mcrypt isn't loaded!"
。
因此,我按照this instruction进行了以下操作以添加mcrypt
。
我从this webpage下载了PHP-5.2.1-Win32
。并复制
该PHP版本中的libmcrypt.dll
和PHP_mcrypt.dll
到我的ext文件夹中。
并重新启动Apache,并尝试检查上述程序是否加载了mcrypt。但是结果是“未加载mcrypt!”。
但结果是相同的:“未加载mcrypt!”。
我还尝试检查openssl
是否启用了PHP -r "echo OPENSSL_VERSION_TEXT;"
。但错误发生如下:
Warning: PHP Startup: Unable to load dynamic library 'mcrypt' (tried: C:\xampp\PHP\ext\mcrypt
所以,我注释掉了PHP.ini中的mcrypt扩展。 “ PHP -r“ echo OPENSSL_VERSION_TEXT;”工作正常,结果为“ OpenSSL 1.1.0h 2018年3月27日”。
解决方法
您可能已经安装了 7.2 非线程安全 (NTS) x64