1.phpmailer类 下载地址: https://github.com/phpmailer/phpmailer
2.假设用163邮箱来发送邮件,首先开启smtp服务
3.发送纯文本邮件
需要的文件及文件位置
send.php代码
1 <?php 2 //引入类 3 $rootPath= dirname(__FILE__); 4 require $rootPath.'/PHPMailer/class.phpmailer.php'; 5 require $rootPath.'/PHPMailer/class.smtp.php'; 6 7 //实例化类 8 $mail = new PHPMailer; 9 10 $mail->isSMTP(); // Set mailer to use SMTP 11 $mail->Host = 'smtp.163.com'; // Specify main and backup SMTP servers 12 $mail->SMTPAuth = true; // Enable SMTP authentication 13 $mail->Username = '17186787852@163.com'; // SMTP username 14 $mail->Password = 'your password'; // SMTP password 15 $mail->CharSet = 'UTF-8'; 16 17 $mail->setFrom('17186787852@163.com', '163'); 18 $mail->addAddress('1822581649@qq.com', 'qq'); // Add a recipient 19 $mail->addReplyTo('17186787852@163.com', '163'); 20 21 $mail->isHTML(true); // Set email format to HTML 22 23 $mail->Subject = '主题'; 24 $mail->Body = '这是一封演示邮件 <b>in bold!</b>'; 25 26 if(!$mail->send()) { 27 echo 'Message could not be sent.'; 28 echo 'Mailer Error: ' . $mail->ErrorInfo; 29 } else { 30 echo 'Message has been sent'; 31 } 32 ?>
4.发送html邮件
需要的文件及位置
send.php代码
1 <?php 2 //引入类 3 $rootPath= dirname(__FILE__); 4 require $rootPath.'/PHPMailer/class.phpmailer.php'; 5 require $rootPath.'/PHPMailer/class.smtp.php'; 6 7 //实例化类 8 $mail = new PHPMailer; 9 10 $mail->isSMTP(); // Set mailer to use SMTP 11 $mail->Host = 'smtp.163.com'; // Specify main and backup SMTP servers 12 $mail->SMTPAuth = true; // Enable SMTP authentication 13 $mail->Username = '17186787852@163.com'; // SMTP username 14 $mail->Password = 'your password'; // SMTP password 15 $mail->CharSet = 'UTF-8'; 16 17 $mail->setFrom('17186787852@163.com', '163'); 18 $mail->addAddress('1822581649@qq.com', 'qq'); // Add a recipient 19 $mail->addReplyTo('17186787852@163.com', '163'); 20 21 $mail->isHTML(true); // Set email format to HTML 22 23 $mail->Subject = '主题'; 24 $mail->msgHTML(file_get_contents($rootPath.'/content.html')); 25 26 if(!$mail->send()) { 27 echo 'Message could not be sent.'; 28 echo 'Mailer Error: ' . $mail->ErrorInfo; 29 } else { 30 echo 'Message has been sent'; 31 } 32 ?>
content.html代码
注意:css样式只能采用行内样式,否则css代码无法生效
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>index</title> 6 </head> 7 <body> 8 <h1>demo</h1> 9 <table style="color: red;border-collapse: collapse;width: 100%;border: 1px solid red;"> 10 <tr> 11 <td>ABCD</td> 12 <td>ABCD</td> 13 <td>ABCD</td> 14 </tr> 15 <tr> 16 <td>ABCD</td> 17 <td>ABCD</td> 18 <td>ABCD</td> 19 </tr> 20 </table> 21 </body> 22 </html>