Zend_Mail_Message, как получить раскодированное содержимое?

Splurov

Новичок
Код:
PHP:
<?php

header('Content-Type: text/plain; charset=UTF-8');
date_default_timezone_set('Asia/Novosibirsk');

error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);

set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . DIRECTORY_SEPARATOR . 'lib');

require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance();

// Сохраняем тестовое письмо в файл на сервере
class Test_Mail_Transport_File extends Zend_Mail_Transport_Abstract {

	function _sendMail() {
		$path = dirname(__FILE__) . '/';
		$fn = '1.eml';
		file_put_contents($path . $fn, $this->header . $this->EOL . $this->body);
	}

}
$mail = new Zend_Mail('UTF-8');
$mail->setSubject('Тестовое письмо');
$mail->setBodyText('Тело письмо (пример ссылки: http://example.com/)');
$mail->setBodyHtml('<p>Тестовое письмо (пример ссылки: <a href="http://example.com/">example.com</a>)</p>');
$mail->addTo('[email protected]');
$mail->setFrom('[email protected]');
$mail->send(new Test_Mail_Transport_File());


// Пытаемся прочитать письмо и вывести содержимое
$message = new Zend_Mail_Message(array(
	'file' => '1.eml',
));

if ($message->isMultipart()) {
	echo $message->subject . PHP_EOL . PHP_EOL;

	$part = $message->getPart(1);
	echo $part->getContent() . PHP_EOL . PHP_EOL;

	$part = $message->getPart(2);
	echo $part->getContent();

}
Результат:
Код:
=?UTF-8?Q?=D0=A2=D0=B5=D1=81=D1=82=D0=BE=D0=B2=D0=BE=D0=B5=20=D0=BF=D0=B8=D1=81=D1=8C=D0=BC=D0=BE?

=D0=A2=D0=B5=D0=BB=D0=BE =D0=BF=D0=B8=D1=81=D1=8C=D0=BC=D0=BE (=D0=BF=D1=
=80=D0=B8=D0=BC=D0=B5=D1=80 =D1=81=D1=81=D1=8B=D0=BB=D0=BA=D0=B8: http:/=
/example.com/)



<p>=D0=A2=D0=B5=D1=81=D1=82=D0=BE=D0=B2=D0=BE=D0=B5 =D0=BF=D0=B8=D1=81=
=D1=8C=D0=BC=D0=BE (=D0=BF=D1=80=D0=B8=D0=BC=D0=B5=D1=80 =D1=81=D1=81=D1=
=8B=D0=BB=D0=BA=D0=B8: <a href=3D"http://example.com/">example.com</a>)<=
/p>
Как получить исходные, не закодированные, заголовок, текст письма и html?
 

_sasha86_

Новичок
как насчет того, чтобы посмотреть в коде как оно кодируется ?
 

Splurov

Новичок
Я посмотрел и знаю как оно кодируется. Не понятно, почему Zend_Mail_Message его не раскодирует автоматически. В документации этот вопрос как-то обойдён стороной.
 

fixxxer

К.О.
Партнер клуба
Видимо, предполагается, что на его основе писать ты будешь отправку сообщений, а не почтовый клиент =)
 
Сверху