本地没有发邮件的服务器,借助现成的SMTP服务器发送邮件是个不错的选择,这里使用到的工具是phpmailer ( Version 5.2.0),SMTP服务器就选gmail和163。
1. 使用gmail发送的脚本
include("class.phpmailer.php");include("class.smtp.php");//获取一个外部文件的内容$mail = new PHPMailer();$body = file_get_contents('contents.html');$body = eregi_replace("[/]",'',$body);//设置smtp参数$mail->IsSMTP();$mail->SMTPAuth = true;$mail->SMTPKeepAlive = true;$mail->SMTPSecure = "ssl";$mail->Host = "smtp.gmail.com";$mail->Port = 465;//填写你的gmail账号和密码$mail->Username = "yourname@gmail.com";$mail->Password = "password";//设置发送方,最好不要伪造地址$mail->From = "yourname@gmail.com";$mail->FromName = "Webmaster";$mail->Subject = "This is the subject";$mail->AltBody = $body;$mail->WordWrap = 50; // set word wrap$mail->MsgHTML($body);//设置回复地址$mail->AddReplyTo("yourname@gmail.com","Webmaster");//添加附件,此处附件与脚本位于相同目录下//否则填写完整路径$mail->AddAttachment("attachment.jpg");$mail->AddAttachment("attachment.zip");//设置邮件接收方的邮箱和姓名$mail->AddAddress("toname@gmail.com","FirstName LastName");//使用HTML格式发送邮件$mail->IsHTML(true);//通过Send方法发送邮件//根据发送结果做相应处理if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo;} else { echo "Message has been sent";}
2.使用163发送邮件的脚本
只需要更改SMTP配置和账户密码即可,SMTP配置如下
//设置smtp参数//注意这里不需要ssl协议$mail->IsSMTP();$mail->SMTPAuth = true;$mail->SMTPKeepAlive = true;$mail->Host = "smtp.163.com";$mail->Port = 25;
在本地wampserver环境下测试通过,需要开启php_openssl 扩展。
以上所述就是本文的全部内容了,希望大家能够喜欢。
新闻热点
疑难解答