利用PHPMailer来完成PHP的邮件发送

作者:袖梨 2022-06-24


1.首先是下载PHPMailer
 
2.解压
 
从中取出class.phpmailer.php 和 class.smtp.php 放到你的项目的文件夹,因为我们等下会引用到它们.
 
3.创建发送邮件的函数,其中你需要配置smtp服务器
 
function postmail($to,$subject = '',$body = ''){
    //Author:smsyun WebSite: http://www.111com.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
    if(!$mail->Send()) {
        echo 'Mailer Error: ' . $mail->ErrorInfo;
    } else {
//        echo "Message sent!恭喜,邮件发送成功!";
    }
}
4. 使用函数
 
 
postmail('[email protected]','测试标题','测试内容');

如果发不出邮件我们可以检测一下是不是邮箱没用开启stmp与pop3功能了,这个可以到163邮箱中去开启了,还有一个如果是新注册的163邮箱是不能发送哦,注册久了才可以使用。

相关文章

精彩推荐