在我继承的代码库中,有一行代码在显示错误页面之前对错误消息进行编码。MCRYPT_RIJNDAEL_256 PHP内存大小错误
$sErrorMessageCrypted = wordwrap(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($sKey), $sMessage, MCRYPT_MODE_CBC, md5(md5($sKey)))), 60, PHP_EOL, true);
该错误是PHP致命错误:用尽134217728个字节允许存储器大小(试图分配81个字节)。
它作为输入接收到的错误消息长度为1674个字符,带有23个字符的盐。
所以,我想知道这里的过程以及为什么会使用这么多的内存。我认为这是如此的错误可以显示,没有人能够读取它。 (尽管我没有看到前面的开发人员有解密功能的地方)。
有关更改此建议的任何建议吗?
感谢
你的脚本运行时接近RAM的限制,然后需要额外的RAM来保存新的字符串跳过了线。这段代码现在没有什么“错误”,你只是在为你正在做的事情做一个太小的内存限制。如果不了解脚本其余部分的其他内容,除了“不要使用太多内存”或“提高限制”之外,我们几乎无法提供帮助。 –