欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php5.5使用PHPMailer-5.2发送邮件的完整步骤

程序员文章站 2022-08-22 23:42:33
前言 这几天一直被邮件发送功能搞得头大,作为一个小白,遇到坑总是难免的。今天终于把phpmailer搞定了,下面就来总结一下 phpmailer - a full-fe...

前言

这几天一直被邮件发送功能搞得头大,作为一个小白,遇到坑总是难免的。今天终于把phpmailer搞定了,下面就来总结一下

phpmailer - a full-featured email creation and transfer class for php。

在php环境中可以使用phpmailer来创建和发送邮件。

最新版本(20181012)是phpmailer 6.0.5,这个无法兼容php5.5以下的环境。由于我需要维护php5.3的项目,需要切换到phpmailer5.2来发送邮件。

下载地址: https://github.com/phpmailer/phpmailer/releases/tag/v5.2.24

下面话不多说了,来一起看看详细的介绍吧

基本使用

下载解压后。新建一个测试demo。

<?php
require 'phpmailerautoload.php';

$mail = new phpmailer;

$mail->smtpdebug = 3;        // enable verbose debug output

$mail->issmtp();          // set mailer to use smtp
$mail->host = 'smtp.exmail.qq.com'; // specify main and backup smtp servers
$mail->smtpauth = true;        // enable smtp authentication
$mail->username = 'xxx@qq.com';     // smtp username
$mail->password = 'yourpassword';       // smtp password
$mail->smtpsecure = 'ssl';       // enable tls encryption, `ssl` also accepted
$mail->port = 465;         // tcp port to connect to

$mail->setfrom('fromwho@qq.com', 'mailer');
$mail->addaddress('towhom@qq.com', 'ryan miao');  // add a recipient
$mail->addaddress('ellen@example.com');    // name is optional
// $mail->addreplyto('info@example.com', 'information');
$mail->addcc('cc@example.com');
$mail->addbcc('bcc@example.com');

$mail->addattachment('/var/tmp/file.tar.gz');   // add attachments
$mail->addattachment('/tmp/image.jpg', 'new.jpg'); // optional name
$mail->ishtml(true);         // set email format to html

$mail->subject = 'here is the subject';
$mail->body = 'this is the html message body <b>in bold!</b>';
$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';
}

开启smtpdebug可以查看日志

 `0` no output
 `1` commands
 `2` data and commands
 `3` as 2 plus connection status
 `4` low-level data output

错误信息保存在 $mail->errorinfo对象中。

保存为mail.php, 命令行执行

php mail.php

即可看到日志,以及邮件发送成功。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。