Zend_Mail - Чтение вложений электронной почты - Отсканировать слишком большие электронные письма - PullRequest
1 голос
/ 10 октября 2011

Я работаю над приложением, использующим zend, и использую zend_mail, чтобы читать электронные письма.Я могу получить все электронные письма и части электронной почты.Единственная проблема, с которой я сталкиваюсь, - если пользователь отправляет большое вложение, он нарушает работу сценария.

Пример отправки пользователя

Message -> Mutiple Parts -> Atachment 1 = 10mb
                            Atachment 2 = 8mb
                            Atachment 3 = 9mb
                            Atachment 4 = 8mb
                            Atachment 5 = 9mb 

Я получаю

<font color=ff0000>
Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 33878183 bytes) in /home/bizvar/public_html/login2/library/Zend/Mime/Decode.php on line 120
Segmentation fault

Я знаю, что проблема в том, что электронная почта слишком большая.Я могу исправить это, добавив больше памяти в мой пример скрипта.

ini_set('memory_limit', '256M');

Тогда это сработает.

Проблема, если они отправят файл большего размера, тогда у меня возникнет та же проблема.

Как я могу предотвратить вход больших файлов и, возможно, вернуть их обратно.

1 Ответ

0 голосов
/ 10 октября 2011

Я думаю, вам нужно установить «разумный» лимит размера и проверить размеры файлов вложений, прежде чем вызывать метод createAttachment(), не позволяющий прикрепить слишком много больших файлов.

Надеюсь, это поможет,

...