測試了幾個PHP發送郵件的模塊,最後發現PHPMailer比較好用。介紹一下具體使用方法:
- 下載地址:http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php5_6/
- 我下載的是PHPMailer_v5.1.tar.gz 下載到本地之後解壓縮hrj@hrj-laptop$ tar zxvf PHPMailer_v5.1.tar.gz
- 目錄中有一個examples目錄,裏面有很多例子,這裏我只是使用smtp來放送系統郵件。
- 將class.phpmailer.php放置php include目錄中,在郵件發送php文件中將class.phpmailer.php include進來。
- 用gmail來進行測試
$mail = new PHPMailer(true);
$mail->IsSMTP(); //將發送郵件服務器設置爲SMTP
//$mail->SMTPDebug = 2; //調試郵件發送bug的時候使用
try {
$mail->SMTPAuth = true; //需要SMTP安全認證
$mail->Host = 'ssl://smtp.gmail.com'; //gmail的smtp服務器,由於gmail需要進行ssl認證,需要注意得在服務器前添加ssl://.
$mail->Port = 465;//SMTP服務器端口號
$mail->Username = SEND_EMAIL_USERNAME; //用戶名
$mail->Password = SEND_EMAIL_PASSWORD;//密碼
$mail->CharSet = 'UTF-8'; //郵件編碼類型
$mail->Encoding = 'base64'; //郵件編碼樣式
$mail->AddAddress($mailto); //收件人
if($cc != '') $mail->AddCC($cc); //郵件抄送人
$mail->SetFrom(REPLAY_EMAIL, 'RD Tools'); //僞裝郵件發件人
$mail->AddReplyTo(REPLAY_EMAIL); //設置郵件回覆人
$mail->Subject = $subject; //郵件標題
$mail->MsgHTML($message); //郵件體
$mail->Send(); //發送
echo "Message Sent OK</p>\n";
} catch (phpmailerException $e) {
echo $e->errorMessage();
} catch (Exception $e) {
echo $e->getMessage();
}
}