mailparse_msg_extract_part_file() 不支持文件包装器,因为它需要能够在文件上使用 seek()。
(PECL mailparse >= 0.9.0)
mailparse_msg_extract_part_file — 提取/解码消息部分
从提供的文件名中提取/解码消息部分。
该部分的内容将根据其传输编码进行解码 - 支持 base64、quoted-printable 和 uuencoded 文本。
mimemail
有效的 MIME
资源,由 mailparse_msg_create() 创建。
filename
可以是文件名或有效的流资源。
callbackfunc
如果设置,这必须是一个有效的回调,它将被传递提取的部分,或者 **null
** 使此函数返回提取的部分。
如果未指定,内容将发送到“stdout”。
如果 callbackfunc
不是 **null
**,则在成功时返回 **true
**。
如果 callbackfunc
设置为 **null
**,则返回提取的部分作为字符串。
在错误时返回 **false
**。
注意“企业邮件”或对字符编码不太了解(或不在乎)的用户。您可能会(正如我们所做的那样)遇到整个邮件主体使用例如 Latin2 编码的邮件(并且 multipart 的 charset 头部中给出了 iso-8859-2),但同时主体还包含使用 UTF-8 字符的文本页脚...是的,fu*g Microsoft Exchange V6.5 frontent 会在屏幕上很好地显示出来,但如果接收时
mailparse_msg_extract_part_file() - 过滤器转换失败。输入消息可能编码不正确...。
因此要格外小心并处理所有可能的错误以避免邮件丢失。