php发送邮件及附件

open($attachments, \ZipArchive::CREATE) === TRUE) {
    // 添加文件到压缩包
    $zip->addFile($attachments_file_url);
    // 关闭压缩包
    $zip->close();
}
*/

//压缩文件夹 https://www.php.cn/faq/582443.html
if(! file_exists($attachments)){
    // 修改ZIP文件名编码
    $attachments = iconv('UTF-8', 'GBK', $attachments);
    $zip = new \ZipArchive();
    if ($zip->open($attachments, \ZipArchive::CREATE) === TRUE) {
        $zip->addGlob('测试的附件/*');//将文件夹内的文件写入(压缩)
        $zip->close();
    }
}


$mail = new PHPMailer();
$mail->IsSMTP(); // 启用SMTP
$mail->Host="smtp.qq.com"; //smtp服务器的名称(这里以QQ邮箱为例)
$mail->SMTPSecure = "ssl"; //目前规定必须使用ssl,非ssl的协议已经不支持了
$mail-> Port = 465; //端口号
#$mail->SMTPDebug = 2; //用于debug PHPMailer信息 : 会显示执行信息(包含错误信息)
$mail->SMTPAuth = true; //启用smtp认证
$mail->Username = "[email protected]"; //你的邮箱名
$mail->Password = "*******" ; //邮箱授权码,注意是授权码,不是登录密码 指南:https://jingyan.baidu.com/article/4f34706e0a35a9a286b56d46.html
$mail->From = "[email protected]"; //发件人地址(也就是你的邮箱地址)
$mail->FromName = "service"; //发件人姓名
$mail->AddAddress('[email protected]'); //收件人地址
$mail->WordWrap = 50; //设置每行字符长度
$mail->IsHTML(true); // 是否HTML格式邮件
$mail->CharSet="utf-8"; //设置邮件编码

$mail->AddAttachment($attachments);// 发送附件
$mail->Subject = $subject; //邮件主题
$mail->Body = $content; //邮件内容
if ($mail->send()) {
    echo '邮件发送成功!';
} else {
    echo '邮件发送失败!';
}

我的目录结构


image.png

你可能感兴趣的:(php发送邮件及附件)