我用这种方式向mailtrap发送电子邮件
$mail = new Zend_Mail();
$mail->setFrom("senderaddress@yahoo.it", 'Temporary sender name');
我已经在很多项目中使用了邮件陷阱,所以我知道我可以使用这些电子邮件地址和名称作为"来自"发送电子邮件
什么不起作用
问题是$mail->send()
抛出异常
5.1.7 Bad sender address syntax
小调试
所以我调试了Zend代码。我现在确信它是作为发送的
Temporary sender name <senderaddress@yahoo.it>
我还试着避免使用垃圾名称,所以只使用
$mail->setFrom("senderaddress@yahoo.it");
标题仅使用写入
<senderaddress@yahoo.it>
但没有任何变化
我不明白的是
我无法理解这个非常旧的Zend项目是否根本没有发送消息,或者Mailtrap是否拒绝。
问题
- 这个发件人地址有什么问题
- 这是来自Zend_Mail还是来自Mailtrap的错误
- 很明显,如何修复
您可以尝试以下方式:
Zend_Mail::setDefaultFrom('senderaddress@yahoo.it', 'Temporary sender name');
$mail = new Zend_Mail();
$mail->setBodyText('...Your message here...');
$mail->send($transport);