Использование pear: фатальная ошибка: допустимый объем памяти 134217728 байт исчерпан (попытался выделить 6144 байт) - PullRequest
0 голосов
/ 14 июня 2011

при попытке отправить письмо с использованием PEAR, я получил следующую ошибку:

Неустранимая ошибка: допустимый объем памяти 134217728 байт исчерпан (попытался выделить 6144 байта)

IЯ ищу на этом сайте и нашел некоторые решения, такие как
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.

Спасибо ...

1 Ответ

2 голосов
/ 14 июня 2011

Сначала попробуйте установить memory_limit на 128M или что-то в этом роде. Отправка почты не должна занимать столько памяти, поэтому, если это не сработает, возможно, что-то не так в используемом вами классе Mail. Вы уверены, что используете последнюю версию?

Кроме того, то, что вы пытаетесь выполнить, может быть легко сделано с помощью нативного PHP:

mail("friend@example.com", "Subject", $body, implode($headers, "\r\n"));
...