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 — Extrae/decodifica una sección de mensaje
$mimemail
, mixed $filename
, callable $callbackfunc
= ?): stringExtrae/decodifica una sección de mensaje del archivo indicado.
Los contenidos de la sección serán decodificados de acuerdo a su codificación de transferencia - se soportan base64, imprimible-con-comillas y texto uuencode.
mimemail
Un recurso MIME
válido, creado con
mailparse_msg_create().
filename
Puede ser un nombre de archivo o un recurso de secuencia válido.
callbackfunc
Si se define, este parámetro debe ser una llamada de retorno válida,
a la cual le será pasada la sección extraída, o null
para
asegurarse de que esta función devuelva la sección extraída.
Si no se especifica, los contenidos serán enviados a "stdout".
Si callbackfunc
es diferente de null
devuelve
true
en caso de éxito.
Si callbackfunc
es null
, devuelve la sección
extraída como una cadena.
Devuelve false
en caso de fallo.
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.