Zend_Mail - 阅读电子邮件附件 - 退回太大的电子邮件

时间:2011-10-10 02:09:11

标签: zend-framework zend-mail

我正在使用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 :(得分:0)

我认为您需要设置“合理”的大小限制并在调用createAttachment()方法之前检查附件文件大小,不允许附加太多大文件。

希望有所帮助,