mailparse_msg_extract_part_file() does not support file-wrappers as it needs to be able to use seek() on the file.
(PECL mailparse >= 0.9.0)
mailparse_msg_extract_part_file — Извлечь/декодировать секцию с сообщением из файла
$mimemail
, mixed $filename
, callable $callbackfunc
= ?): stringИзвлечь/декодировать секцию с сообщением из указанного файла.
Контент сообщения будет декодирован в соответствии с кодировкой пересылки. Поддерживаются следующие кодировки: base64, quoted-printable и uuencoded.
mimemail
Корректный MIME
-ресурс, созданный mailparse_msg_create().
filename
Имя файла или корректный потоковый ресурс.
callbackfunc
Если задано, то в эту функцию будет передано извлечённое сообщение.
Если null
, то извлечённое сообщение будет просто возвращено.
Если не задано, то контент будет направлен на стандартный вывод (stdout).
Если callbackfunc
не null
, то вернёт true
в случае успешного выполнения.
Если callbackfunc
задана как null
, вернёт извлечённую
секцию сообщения в виде строки.
Вернёт false
в случае возникновения ошибки.
mailparse_msg_extract_part_file() does not support file-wrappers as it needs to be able to use seek() on the file.
Be aware of "corporate mails" or users who do not understand character encoding too deeply (or do not care). You may (as we did) face mail where the whole mail body is encoded used i.e. Latin2 (and iso-8859-2 is given in multipart's charset header) but at the same time the body also contains text footer with UTF-8 characters in it... Yes, fu*g Microsoft Exchange V6.5 frontent will show that fine on the screen, but if when receive it:
mailparse_msg_extract_part_file() - filter conversion failed. Input message is probably incorrectly encoded in ....
so be extra careful and deal with all the possible errors to avoid mail loss.