【发布时间】:2011-09-14 11:07:44
【问题描述】:
当我尝试使用 PEAR 发送邮件时,出现以下错误:
致命错误:134217728 字节的允许内存大小已用尽(尝试分配 6144 字节)
我在这个网站上进行了搜索,并找到了一些解决方案,例如
ini_set('memory_limit', '-1');
但我遇到了同样的错误。请帮帮我...
<?php
include('Mail.php');
ini_set('memory_limit', '-1');
$headers = array("From"=>"mymail@gmail.com", "Subject"=>"Test Mail");
$body = "This is a test!";
$mail = Mail::factory("mail");
$mail->send("friend@example.com", $headers, $body);
?>
更新
实际上我使用了代码: ini_set('memory_limit', '256M'); 因为,当我查看 php.ini 文件时,我发现它被设置为 128M。所以我在那里和代码中将值更改为 256M。但它没有用。所以我尝试了512M,最后是-1。
谢谢...
【问题讨论】:
-
您超出了 PHP 默认设置的 128 MB 限制。这是导致错误的脚本中的所有代码吗?这似乎不太可能足以超过 memory_limit。
-
哪一行导致了问题?是
$mail->send()吗? -
@datasage 是对的。与其寻找增加内存限制的方法,不如找出这 6 行代码占用如此多内存的原因。