SendBxMailController.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace app\api\controller\notify;
  3. use app\api\controller\BaseApiController;
  4. use PHPMailer\PHPMailer\PHPMailer;
  5. use think\Exception;
  6. /**
  7. * 发送保险的邮箱
  8. * Class SendBxMailController
  9. * @package app\api\controller\notify
  10. */
  11. class SendBxMailController extends BaseApiController
  12. {
  13. public array $notNeedLogin = ['sendMail'];
  14. public function sendMail()
  15. {
  16. // 文件路径 - 替换为你的实际文件路径
  17. $filePath = 'uploads/baoxian/20250321职业责任险投保清单.xlsx';
  18. $mail = new PHPMailer(true);
  19. try {
  20. // 邮件服务器设置
  21. $mail->isSMTP(); // 使用SMTP发送邮件
  22. $mail->Host = 'smtp.126.com'; // SMTP服务器地址,替换为你的SMTP服务器
  23. $mail->SMTPAuth = true; // 启用SMTP认证
  24. $mail->Username = 'whkyjl@126.com'; // SMTP用户名,替换为你的邮箱地址
  25. $mail->Password = 'MNpgMjYMYehx3nPi'; // SMTP密码,替换为你的邮箱密码
  26. $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // 开启加密,默认为无加密,可选`PHPMailer::ENCRYPTION_SMTPS`
  27. $mail->Port = 465;
  28. $mail->SMTPDebug = 2; // 启用详细调试输出
  29. // 发送者和接收者设置
  30. $mail->setFrom('whkyjl@126.com', '武汉开源节流科技有限公司'); // 发件人邮箱和名称
  31. $mail->addAddress('1804628603@qq.com', '出单业务'); // 收件人邮箱和名称
  32. // $mail->addAddress('sujing@ub.chinalife-p.com.cn', '出单业务'); // 收件人邮箱和名称
  33. // 设置邮件内容
  34. $mail->isHTML(true); // 将邮件正文设置为HTML格式
  35. $mail->Subject = '请查收附件中的Excel文件';
  36. $mail->Body = '<p>你好,<br>请查收附件中的Excel文件。</p>';
  37. $mail->AltBody = '你好,请查收附件中的Excel文件。'; // 非HTML邮件客户端显示的内容
  38. // 添加附件
  39. $mail->addAttachment($filePath, '20250321职业责任险投保清单.xlsx'); // 添加附件,第二个参数是显示在邮件中的文件名
  40. $mail->send();
  41. echo '邮件发送成功';
  42. } catch (Exception $e) {
  43. echo "邮件发送失败. 错误信息: {$mail->ErrorInfo}";
  44. }
  45. }
  46. }