如何在电子邮件中显示与地址不同的地址?使用zend框架

时间:2010-07-07 13:04:19

标签: php email zend-framework

首先,我不打算发送垃圾邮件 - 我正在我的应用程序中构建电子邮件工具,并希望能够在电子邮件的标题中包含任何电子邮件地址,同时能够从任何邮件发送它服务器即喜欢从我自己的smtp服务器发送它来自字段的电子邮件中显示雅虎地址?可能吗?我在这里使用php和zend框架

3 个答案:

答案 0 :(得分:1)

以下适用于sendmail,应该与类似sendmail的smtp服务器一起使用。如果from域与原始服务器的域不匹配,则标记为垃圾邮件的可能性会增加。

$msg = 'my message body';
$subject = 'my message';
$to = 'email@example.com';
$from = "ali@yahoo.com";
$headers .= "From: $from\r\n";  
$flags = '-f "$from"';

mail($to, $subject, $msg, $headers, $flags);

答案 1 :(得分:1)

Zend_Mail允许您指定所有内容。

Setting up transport(在引导期间):

$tr = new Zend_Mail_Transport_Smtp($mail_smtp_host, array(
    'auth' => 'login',
    'username' => $mail_smtp_username,
    'password' => $mail_smtp_password,
    'port' => $mail_smtp_host_port,
));
Zend_Mail::setDefaultTransport($tr);
在您的应用中的任何位置

Sending a message

$mail = new Zend_Mail();
$mail->setFrom($email_from, $email_from_name)
    ->addTo($email_to)
    ->addCc($email_cc)
    ->addBcc($email_bcc)
    ->setSubject($email_subject)
    ->setBodyHtml($email_html)
    ->setBodyText($email_text)
    ->send()
;

答案 2 :(得分:0)

您可以通过Yahoo的SMTP服务器发送。

smtp.mail.yahoo.com,SSL,端口465,Yahoo地址的用户名/密码。