使用php和gmail发送电子邮件的最佳方式是什么?

时间:2011-01-30 21:11:00

标签: php email gmail

使用php和gmail发送电子邮件的最佳方式是什么?

我发现以下链接:

sending mail with PHPMailer

但在下载PHPMailer后,我找不到class.phpmailer.php!

你会告诉我一种发送邮件的方式(gmail服务器和php lan)吗?

另一个问题是我的gmail帐户已经设置为smtp /可以吗?

最好的问候

2 个答案:

答案 0 :(得分:2)

我建议您将SwiftMailer与其SmtpTransport一起使用,您可以将smtp.gmail.com指定为SMTP服务器,并将其指定为使用SSL。

Example

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com')
    ->setPort(465)
    ->setEncryption('ssl')
    ->setUsername('yourname@gmail.com')
    ->setPassword('YOUR_SECRET_PWD');
...

编辑, 按要求 - 这是一个完整的例子(虽然未经测试):

<?php
require_once "lib/swift_required.php";

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com')
    ->setPort(465)
    ->setEncryption('ssl')
    ->setUsername('yourname@gmail.com')
    ->setPassword('YOUR_SECRET_PWD');

$mailer = Swift_Mailer::newInstance($transport);

$htmlBody = '<html><body><h1>HTML-mail example!</h1><p>Contents</p></body></html>';
$plainBody = 'Looks like you cannot read HTML-emails? This is alternative content only for you.';

$message = Swift_Message::newInstance('This is the subject of the e-mail')
    ->setFrom(array('yourname@gmail.com' => 'You Name'))
    ->setTo(array('yourfriend@domain.com' => 'Your Friends Name'))
    ->setBody($plainBody)
    ->addPart($htmlBody, 'text/html');

$mailer->send($message);

答案 1 :(得分:0)

也许你的免费主机上有Zend Framework吗?

所以你可以使用Zend Mail: http://framework.zend.com/manual/1.11/en/zend.mail.introduction.html