利用PHPMailer来完成PHP的邮件发送
四月 03, 2019 | views
Comments 0
PHPMailer发送邮件配置非常的简单,只要下载一个PHPMailer插件,然后我们再注册一个163邮箱就可以实现php发邮件了,具体例子如下.
1.首先是下载PHPMailer
2.解压
从中取出class.phpmailer.php 和 class.smtp.php 放到你的项目的文件夹,因为我们等下会引用到它们.
3.创建发送邮件的函数,其中你需要配置smtp服务器
- function postmail($to,$subject = '',$body = ''){
- //Author:smsyun WebSite: http://www.111cn.net
- //$to 表示收件人地址 $subject 表示邮件标题 $body表示邮件正文
- //error_reporting(E_ALL);
- error_reporting(E_STRICT);
- date_default_timezone_set('Asia/Shanghai');//设定时区东八区
- require_once('class.phpmailer.php');
- include('class.smtp.php');
- $mail = new PHPMailer(); //new一个PHPMailer对象出来
- $body = eregi_replace("[\]",'',$body); //对邮件内容进行必要的过滤
- $mail->CharSet ="utf-8";//设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码
- $mail->IsSMTP(); // 设定使用SMTP服务
- $mail->SMTPDebug = 1; // 启用SMTP调试功能
- // 1 = errors and messages
- // 2 = messages only
- $mail->SMTPAuth = true; // 启用 SMTP 验证功能
- $mail->SMTPSecure = "ssl"; // 安全协议,可以注释掉
- $mail->Host = 'stmp.163.com'; // SMTP 服务器
- $mail->Port = 25; // SMTP服务器的端口号
- $mail->Username = 'smsyun'; // SMTP服务器用户名,PS:我乱打的
- $mail->Password = 'password'; // SMTP服务器密码
- $mail->SetFrom('[email protected]', 'who');
- $mail->AddReplyTo('[email protected]','who');
- $mail->Subject = $subject;
- $mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional, comment out and test
- $mail->MsgHTML($body);
- $address = $to;
- $mail->AddAddress($address, '');
- //$mail->AddAttachment("images/phpmailer.gif"); // attachment
- //$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment //phpfensi.com
- if(!$mail->Send()) {
- echo 'Mailer Error: ' . $mail->ErrorInfo;
- } else {
- // echo "Message sent!恭喜,邮件发送成功!";
- }
- }
4.使用函数
postmail('[email protected]','测试标题','测试内容');
如果发不出邮件我们可以检测一下是不是邮箱没用开启stmp与pop3功能了,这个可以到163邮箱中去开启了,还有一个如果是新注册的163邮箱是不能发送哦,注册久了才可以使用.
zend