我正在开发一个PHP脚本来替换一个C#Windows服务,该服务读取客户端电子邮件并将附件以任何格式转换为标准格式。 IMAP部分工作正常,直到我开始使用ImageMagick转换大型文档,然后我开始在任何尝试执行的IMAP函数中获取错误:“试图获取非对象的属性”。此外,将电子邮件保存到.eml文件的功能开始保存本质上为空的文件,以及将每个电子邮件设置为“看不见”的代码,从“看不见”退出工作。
如果我跳过处理附件最多的电子邮件,一切正常。
如果我运行代码注释掉ImageMagick命令它运行正常,包括保存.eml文件并将'看不见'设置为'see',所以这与ImageMagick有关,但如果我能,我会被诅咒弄清楚是什么。
每次图像转换完成后,我都添加了$ imagick-> clear()。
我在创建$ imagick对象后立即添加了这个: $ imagick-> setResourceLimit(imagick :: RESOURCETYPE_MEMORY,256); $ imagick-> setResourceLimit(imagick :: RESOURCETYPE_MAP,256); $ imagick-> setResourceLimit(imagick :: RESOURCETYPE_AREA,1512); $ imagick-> setResourceLimit(imagick :: RESOURCETYPE_FILE,768); $ imagick-> setResourceLimit(imagick :: RESOURCETYPE_DISK,-1);
任何想法,任何人?
感谢。
答案 0 :(得分:1)
您的IMAP连接可能已超时。有些服务器会在非常短暂的非活动状态后关闭连接,雅虎只需2分钟。