PHP借助phpmailer发送邮件
本地没有发邮件的服务器,借助现成的SMTP服务器发送邮件是个不错的选择,这里使用到的工具是phpmailer(Version5.2.0),SMTP服务器就选gmail和163。
1.使用gmail发送的脚本
include("class.phpmailer.php"); include("class.smtp.php"); //获取一个外部文件的内容 $mail=newPHPMailer(); $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="Thisisthesubject"; $mail->AltBody=$body; $mail->WordWrap=50;//setwordwrap $mail->MsgHTML($body); //设置回复地址 $mail->AddReplyTo("yourname@gmail.com","Webmaster"); //添加附件,此处附件与脚本位于相同目录下 //否则填写完整路径 $mail->AddAttachment("attachment.jpg"); $mail->AddAttachment("attachment.zip"); //设置邮件接收方的邮箱和姓名 $mail->AddAddress("toname@gmail.com","FirstNameLastName"); //使用HTML格式发送邮件 $mail->IsHTML(true); //通过Send方法发送邮件 //根据发送结果做相应处理 if(!$mail->Send()){ echo"MailerError:".$mail->ErrorInfo; }else{ echo"Messagehasbeensent"; }
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扩展。
以上所述就是本文的全部内容了,希望大家能够喜欢。