Estoy escribiendo un controlador de pipa de soporte técnico para canalizar los correos electrónicos entrantes como respuestas de ticket del servicio de asistencia. Algunos correos electrónicos están entrando perfectamente bien, otros vienen como un revoltijo del texto y todos los 3D son convertidos en una cadena gigante. ¿Alguien tiene una idea sobre cómo decodificar eso en texto plano?Zend_Mail y = 0D = 0A = 3D = 3D = 3D = 3D = 3D
Como referencia, este es mi correo función de análisis sintáctico:
public function parseEmailMessage(Zend_Mail_Message $msg)
{
if ($msg->isMultiPart()) {
$arrAttachments = array();
$body = '';
// Multipart Mime Message
foreach (new RecursiveIteratorIterator($msg) as $part) {
try {
$mimeType = strtok($part->contentType, ';');
// Parse file name
preg_match('/name="(?<filename>[a-zA-Z0-9.\-_]+)"/is', $part->contentType, $attachmentName);
// Append plaintext results to $body
// All other content parts will be treated as attachments
switch ($mimeType) {
case 'text/plain':
$body .= trim($part->getContent()) . "\n";
break;
case 'text/html':
$body .= trim(strip_tags($part->getContent));
break;
default:
$arrAttachments[] = array(
'attachment_mime' => $mimeType,
'attachment_name' => $this->filterFileName($attachmentName['filename']),
'base64data' => trim($part->getContent())
);
}
} catch (Zend_Mail_Exception $e) {
// ignore
}
}
return array($body, $arrAttachments);
} else {
// Plain text message
return array(trim($msg->getContent()), array());
}
}
lo siento, tuve que entrar aquí para ver lo que = 0D = 0A = 3D = 3D = 3D = 3D se trataba. –