我在尝试调用mail()函数时收到此错误。PHP致命错误:允许内存大小为33554432字节耗尽(试图分配41007872字节)
我试着将ini_set('memory_limit', '64m')
添加到我的index.php文件中 - 其中包括()所有其他文件 - 但它没有解决它。
然后我尝试添加一个php.ini文件到根目录(其中index.php驻留)与内容memory_limit = 64M
然后给我PDO类未找到错误。所以我在PDO扩展中添加了php.ini文件,现在所有错误都消失了。
但是,代码仍然失败。 phpinfo()显示内存限制已增加到64M,但我的mail()函数正在查杀页面的执行情况。
我该如何解决这个问题? :/
邮件功能
private static function emailPassword(SafeString $email, $password)
{
$subject = 'Registration';
$message = 'Your password is: ' . $password . "\n";
$headers = 'From: [email protected]' . "\r\n";
$headers .= 'Reply-to: [email protected]' . "\r\n";
$message = str_replace("\n.", "\n..", $message);
if (!mail($email->unsafeRaw(), $subject, $message, $headers))
{
throw new Exception('Failed');
}
}
“邮件”功能可能不是你的问题,它可能只是已经满桶的最后一滴。尝试在代码的其余部分找到问题。 – deceze 2010-02-17 04:29:53
试图分配40MB ...你的unsafeRaw()方法在做什么? – Arkh 2010-02-17 11:08:40