Php ZF2转发电子邮件(Zend\Mail\Storage\Message)
我需要使用Zend Framework 2转发电子邮件 我试过了Php ZF2转发电子邮件(Zend\Mail\Storage\Message),php,email,zend-framework2,Php,Email,Zend Framework2,我需要使用Zend Framework 2转发电子邮件 我试过了 //$message - Zend\Mail\Storage\Message $message->to = 'lala@example.com'; $transport = new \Zend\Mail\Transport\Sendmail(); $transport->send($message); 但是$transport->send()只接受Zend\Mail\Message 任何人都知道在不创建新的Zend\
//$message - Zend\Mail\Storage\Message
$message->to = 'lala@example.com';
$transport = new \Zend\Mail\Transport\Sendmail();
$transport->send($message);
但是$transport->send()
只接受Zend\Mail\Message
任何人都知道在不创建新的
Zend\Mail\Message
的情况下前进的方法?使用Charles idea找到了非常简单的前进方法:
$fwd = new \Zend\Mail\Message();
$fwd->setBody($message->getContent());
$h = $message->getHeaders();
$h->removeHeader('To');
$fwd->setHeaders($h);
$fwd->addTo('email@example.com');
$transport = new \Zend\Mail\Transport\Sendmail();
$transport->send($fwd);
您正在使用哪个特定的ZF版本,以及现有消息来自哪个存储后端?看起来您可以在新消息上调用
getContent
和getMessage
,并将它们传递给setHeaders
和setBody
,但这取决于旧消息返回的数据类型。@Charles ty,谢谢您的建议。我的zend版本是2.2.4。我正在使用IMAP获取消息。@StephanWeinhold,这里指定了Zend Framework 2,在标记为重复的问题中没有指定它。@lajos arpad,但在我看来,具体主题是相同的。呸,很高兴它起作用了。存储消息接口仅建议getHeaders
和getContent
的实现以邮件消息本机理解的方式返回其数据。