本地沒有發郵件的服務器,借助現成的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 = "[email protected]"; $mail->Password = "password"; //設置發送方,最好不要偽造地址 $mail->From = "[email protected]"; $mail->FromName = "Webmaster"; $mail->Subject = "This is the subject"; $mail->AltBody = $body; $mail->WordWrap = 50; // set word wrap $mail->MsgHTML($body); //設置回復地址 $mail->AddReplyTo("[email protected]","Webmaster"); //添加附件,此處附件與腳本位於相同目錄下 //否則填寫完整路徑 $mail->AddAttachment("attachment.jpg"); $mail->AddAttachment("attachment.zip"); //設置郵件接收方的郵箱和姓名 $mail->AddAddress("[email protected]","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 擴展。
以上所述就是本文的全部內容了,希望大家能夠喜歡。