使用PHPMailer发送邮件实例

2025-05-27 0 40

本文实例为大家分享了PHPMailer发送邮件的具体代码,供大家参考,具体内容如下

PHPMailer类源代码下载地址:https://github.com/PHPMailer/PHPMailer

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117
<?php

/*

to: 邮件接收地址

subject: 邮件主题

body: 邮件内容

attachpath:附件地址

cc: 邮件抄送地址

bcc: 邮件暗抄送地址

*/

function send_mail($to, $subject="", $body="", $attachpath="", $cc="", $bcc="")

{

// 对邮件内容进行必要的过滤

$body = eregi_replace("[\\]",'',$body);

// 设定时区

date_default_timezone_set("PRC");

require_once('class.phpmailer.php');

require_once("class.smtp.php");

// 实例化PHPMailer对象

$mail = new PHPMailer();

// 设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置为 UTF-8

$mail->CharSet ="UTF-8";

// 设定使用SMTP服务

$mail->IsSMTP();

// 启用 SMTP 验证功能

$mail->SMTPAuth = true;

// SMTP 安全协议

$mail->SMTPSecure = "ssl";

// SMTP 服务器

$mail->Host = "smtp.qq.com";

// SMTP服务器的端口号

$mail->Port = 465;

// SMTP服务器用户名和密码

$mail->Username = "xxxxxx@qq.com";

$mail->Password = "xxxxxx";

// 设置发件人地址和名称,名称可有可无

$mail->SetFrom("xxxxxx@qq.com", "xxxxxx");

// 设置邮件接收地址和名称,第二个参数无所谓。必须用AddAddress添加邮件接收地址。AddReplyTo方法没什么用。

//$mail->AddReplyTo("xxxxxx@163.com", "xxxxxx");

$mailaddrs = split(",", $to);

foreach ($mailaddrs as $addres)

{

//校验邮箱地址是否合法

if (filter_var($addres, FILTER_VALIDATE_EMAIL))

{

$mail->AddAddress($addres);

}

}

// 设置邮件抄送地址

if ($cc != "")

{

$ccaddrs = split(",", $cc);

foreach ($ccaddrs as $ccaddr)

{

//校验邮箱地址是否合法

if (filter_var($ccaddr, FILTER_VALIDATE_EMAIL))

{

$mail->addCC($ccaddr);

}

}

}

// 设置邮件暗抄送地址,私密发送

if ($bcc != "")

{

$bccaddrs = split(",", $bcc);

foreach ($bccaddrs as $bccaddr)

{

//校验邮箱地址是否合法

if (filter_var($bccaddr, FILTER_VALIDATE_EMAIL))

{

$mail->addBCC($bccaddr);

}

}

}

// 设置邮件主题

$mail->Subject = $subject;

// 可选项,向下兼容考虑

$mail->AltBody = "为了查看该邮件,请切换到支持 HTML 的邮件客户端";

// 设置邮件内容

$mail->MsgHTML($body);

//使用HTML格式发送邮件

$mail->IsHTML(true);

// 添加附件,第一个参数是附件地址,第二个参数附件名

//$mail->AddAttachment("images/phpmailer.gif");

$mail->AddAttachment($attachpath);

// 发送邮件

if(!$mail->Send())

{

echo "发送失败:" . $mail->ErrorInfo . PHP_EOL;

}

else

{

echo "恭喜,邮件发送成功!" . PHP_EOL;

}

}

$emailAddr = "xxxxxx@163.com,xxxxxx@qq.com,";

send_mail($emailAddr, "测试邮件", "<h1>使用PHPMailer类发送的邮件。</h1>", "mail/20170216.gif", "xxxxxx@qq.com", "");

?>

测试结果:

使用PHPMailer发送邮件实例

说明:第44行的SMTP服务器密码为qq邮箱授权码。

登录QQ邮箱->设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务->生成授权码

使用PHPMailer发送邮件实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 使用PHPMailer发送邮件实例 https://www.kuaiidc.com/73067.html

相关文章

发表评论
暂无评论