摘要:
工欲善其事必先利其器。首先肯定是要获得PHPMailer这个类库。有两种方式可以选择...
工欲善其事必先利其器。首先肯定是要获得PHPMailer这个类库。有两种方式可以选择
链接:https://pan.baidu.com/s/1XlpHwiNVmYB3RR5TplAf4w
提取码:g8s2
方式二:电脑下载Composer。至于把Composer下载下来以及怎么安装。自行想办法解决,所以该方式适合有一定水平的读者
Composer下载PHPMailer命令
composer require phpmailer/phpmailer
有了PHPMailer这个类库以后,还需要为你在用的PHP版本配置一下可用的扩展php_openssl。如果已经安装该扩展,请忽略呢
修改配置文件php.ini
将extension=php_openssl.dll开启(去掉前面的分号就行)
好了。做好了这几步之后可以献上代码分享给你们了
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'vendor/phpmailer/phpmailer/src/Exception.php';
require 'vendor/phpmailer/phpmailer/src/PHPMailer.php';
require 'vendor/phpmailer/phpmailer/src/SMTP.php';
$mail = new PHPMailer(true);
$mail->isSMTP();// 使用SMTP服务
$mail->CharSet = "utf8";// 编码格式为utf8,不设置编码的话,中文会出现乱码
$mail->Host = "smtp.163.com";// 发送方的SMTP服务器地址
$mail->SMTPAuth = true;// 是否使用身份验证
$mail->Username = "*******@163.com";// 发送方的163邮箱用户名
$mail->Password = "*******";// 发送方的邮箱密码,注意用163邮箱这里填写的是“客户端授权密码”而不是邮箱的登录密码!
$mail->SMTPSecure = "ssl";// 使用ssl协议方式
$mail->Port = 994;// 163邮箱的ssl协议方式端口号是465/994
$mail->From= "xxxx";
$mail->Helo= "xxxx";//可以设置
$mail->setFrom("*******@163.com","hepuhua");// 设置发件人信息,如邮件格式说明中的发件人,这里会显示为Mailer(xxxx@163.com),Mailer是当做名字显示
$mail->addAddress('*******@qq.com','Liang');// 设置收件人信息,如邮件格式说明中的收件人,这里会显示为Liang(yyyy@163.com)
$mail->IsHTML(true);
$mail->Subject = '你有一封新邮件用于测试标题';// 邮件标题
$mail->Body = '测试邮件正文';// 邮件正文
if(!$mail->send()){// 发送邮件
echo "Message could not be sent.";
echo "Mailer Error: ".$mail->ErrorInfo;// 输出错误信息
}else{
echo 'Message has been sent.';
}
?>
代码运行之后,可能会报错
SMTP Error: Could not authenticate
则是因为你的密码不对,应该是客户端密码,而不是其他密码如图所示则是所需要的密码
此篇文章由DurkBlue发布,请自觉转载请注明来处