使用LMLPHP和PHPMailer发送邮件
博客专区 > hosser 的博客 > 博客详情
使用LMLPHP和PHPMailer发送邮件
hosser 发表于2年前
使用LMLPHP和PHPMailer发送邮件
  • 发表于 2年前
  • 阅读 146
  • 收藏 0
  • 点赞 0
  • 评论 0

【腾讯云】新注册用户域名抢购1元起>>>   

摘要: 使用PHP如何发送邮件 ,STMP 如何发送邮件,最简单的发送邮件的方法,无需配置邮件服务器,使用126邮箱发送邮件。

使用LMLPHP和PHPMailer发送邮件技术

maybe yes 发表于2015-03-27 23:33

原文链接 : http://blog.lmlphp.com/archives/93/Use_LMLPHP_and_PHPMailer_to_send_mail  来自 : LMLPHP后院

前几天使用 phpmailer ,通过 smtp 的方式发送了邮件。本人用的是 126 邮箱测试的,发送纪录也保存到了邮箱的已发送里面。有个朋友问我发送邮件里面含有 HTML 会失败,发送的邮件有时候会退回,这个怎么办。一般的知名度比较高的开源应用,后台的发邮件的配置都可以选择使用 PHP mail 函数发送邮件或使用 SMTP 发送邮件。比较好的方式是使用 SMTP 来发送邮件,这样程序只是一个客户端,发送邮件成功率更高,若直接使用 mail 函数发送,一般配置比较麻烦,需要本地有邮件服务器,更容易进入垃圾箱。

下面,使用 LMLPHP 框架为例,结合 phpmailer 发送邮件,删除了抄送、回复等一些配置,代码参考。

public function mailtest(){
    require '/Users/leiminglin/Documents/GIT/GITHUB/PHPMailer/PHPMailerAutoload.php';
    $mail = new PHPMailer;
    $mail->isSMTP();                                      // Set mailer to use SMTP
    $mail->Host = 'smtp.126.com';  // Specify main and backup SMTP servers
    $mail->SMTPAuth = true;                               // Enable SMTP authentication
    $mail->Username = 'leiminglin@126.com';                 // SMTP username
    $mail->Password = 'passwd';                           // SMTP password
    $mail->SMTPSecure = 'ssl';                            // Enable TLS encryption, `ssl` also accepted
    $mail->Port = 587;                                    // TCP port to connect to

    $mail->From = 'leiminglin@126.com';
    $mail->FromName = 'May';
    $mail->addAddress('446217858@qq.com', 'maybe yes');     // Add a recipient
    $mail->addAddress('2859*****@qq.com', 'zhang******');     // Add a recipient
    $mail->isHTML(true);                                  // Set email format to HTML

    $mail->Subject = 'mail test from leiminglin';
    $mail->Body    = 'This is the HTML message body <b>in bold!</b><font color="red">i am red font</font>';
    $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
    } else {
        echo 'Message has been sent';
    }
}

上面是 index 控制器的一个方法,CLI 运行方式如下。

$php index.php /index/mailtest

阅(355)评(0)查看评论


  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 193
博文 77
码字总数 4614
作品 3
×
hosser
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: