我正在使用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');
然后它有效。
问题是,如果他们发送更大的文件,那么我将遇到同样的问题。
如何防止大文件进入并可能将其反弹。
答案 0 :(得分:0)
我认为您需要设置“合理”的大小限制并在调用createAttachment()
方法之前检查附件文件大小,不允许附加太多大文件。
希望有所帮助,