- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我已经将 laravel 5.3 升级到 laravel 5.5,我正在使用 php 7.1.11
升级时出现错误
ErrorException (E_ERROR) 函数 mcrypt_get_iv_size() 已弃用
在 config\app
我有
'cipher' => 'AES-256-CBC'
也尝试添加
error_reporting(E_ALL ^ E_DEPRECATED);
但仍然出错。
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, self::$skey, $text, MCRYPT_MODE_ECB, $iv);
这是我正在使用的代码。
最佳答案
Laravel 已经删除了 5.3 中的所有 mcrypt 代码(自 Laravel 5.1 以来默认情况下不使用它)所以我假设这是 OP 自己的代码。
理想情况下,这段代码应该迁移到 OpenSSL,但在此之前它可以像这样包装:
$olderrorReporting = error_reporting();
error_reporting($olderrorReporting&(~E_DEPRECATED));
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, self::$skey, $text, MCRYPT_MODE_ECB, $iv);
error_reporting($olderrorReporting)
上述解决方案通常可用于“抑制”已弃用的警告。
旁注:$a ^ $b
在 PHP 中是 XOR 所以 error_reporting(E_ALL ^ E_DEPRECATED)
基本上等同于 error_reporting(E_ALL)
关于php - 功能 mcrypt_get_iv_size() 在 Laravel 5.5 和 php 7.1.11 上被弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47324443/
我在 L4,这是我的 app.php true, /* |--------------------------------------------------------------
我在新电脑上安装了laravel,但出现此错误: ErrorException mcrypt_get_iv_size(): Module initialization failed 我从旧电脑复制了该
在PHP documentation for mcrypt_get_iv_size声明当算法/ block 模式组合不使用 IV 时,返回值将为零: Returns the size of the I
我在通过 AppServ 使用 mcrypt_get_iv_size 函数时发现了一个问题. 我试图找到与解决问题相关的主题。 但是,我尝试将 libmcrypt.dll 下载到 symtem32 中
我的所有项目都使用 Laravel 5.0。昨天,我将我的 PHP 版本从 7.0.x 更新到了 7.1.0 版本。更新后,我尝试打开我的 Laravel 项目并在下面看到这条消息: ErrorExc
当我使用 encrypt library encrypt 我的 ID 时,它给我一个错误,如: 谢谢你的帮助 最佳答案 codeigniter 已经在他们的加密库的官方文档中提到了它 This lib
我已经将 laravel 5.3 升级到 laravel 5.5,我正在使用 php 7.1.11 升级时出现错误 ErrorException (E_ERROR) 函数 mcrypt_get_iv_
我刚刚升级了我的 MAMP 服务器以运行 7.1.0。我现在在安装 Laravel 4.2 时遇到此错误; Function mcrypt_get_iv_size() is deprecated 我试
我是一名优秀的程序员,十分优秀!