邮件最基本的用处就是在用户注册账号的时候,向用户邮箱中发一封验证邮件,以及在以后的找回密码等互动方面。php自带的发送邮件功能有限,网上有流行的php邮件发送包,通过提供的类可以很方便的发送邮件class.phpmailer.php,在发送邮件之前让我们先了解一下邮件的发送过程及使用到的协议都有哪些,在互联网上发送电子邮件,先在本地书写一封邮件,发送到邮件接收服务器上面,该服务器根据地址发送到邮件接收服务器上面,邮件接收服务器会根据地址把邮件发送到目标地址的邮箱中,现在用到的邮件协议主要有IMAP主要提供的是通过Internet获取信息的一种协议。IMAP象POP那样提供了方便的邮件下载服务,让用户能进行离线阅读,但IMAP能完成的却远远不只这些。IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。 POP3即邮局协议,用于电子邮件的接收,它使用TCP的110端口,现在常用的是第三版 ,所以简称为POP3。POP3仍采用Client/Server工作模式,。当客户机需要服务时,客户端的软件(OutlookExpress或FoxMail)将与POP3服务器建立TCP连接,此后要经过POP3协议的三种工作状态,首先是认证过程,确认客户机提供的用户名和密码,在认证通过后便转入处理状态,在此状态下用户可收取自己的邮件或做邮件的删除,在完成响应的操作后客户机便发出quit命令,此后便进入更新状态,将做删除标记的邮件从服务器端删除掉。到此为止整个POP过程完成。SMTP称为简单Mail传输协议(Simple Mail Transfer Protocal),目标是向用户提供高效、可靠的邮件传输。SMTP的一个重要特点是它能够在传送中接力传送邮件,即邮 件可以通过不同网络上的主机接力式传送。工作在两种情况下:一是电子邮件从客户机传输到服务器;二是从某一个服务器传输到另一个服务器。SMTP是个请求/响应协议,它监听25号端口,用于接收用户的Mail请求,并与远端Mail服务器建立SMTP连接。
现在基本都用的是SMTP协议,想腾讯 163他们有多种服务器供用户选择,
require 'class.phpmailer.php';
try {
$mail = new PHPMailer(true); //New instance, with exceptions enabled
$body = file_get_contents('contents.html');
$body = preg_replace('/\\\\/','', $body); //Strip backslashes
$mail->IsSMTP(); // tell the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Port = 25; // set the SMTP server port
$mail->Host = "smtp@163.com"; // SMTP server
$mail->Username = "bilibo"; // SMTP server username
$mail->Password = "qq250572316"; // SMTP server password
$mail->IsSendmail(); // tell the class to use Sendmail
$mail->AddReplyTo("wsblb2008@163.com","First Last");
$mail->From = "bilibo@ifensi.com";
$mail->FromName = "First Last";
$to = "wsblb2008@163.com";
$mail->AddAddress($to);
$mail->Subject = "First PHPMailer Message";
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->WordWrap = 80; // set word wrap
$mail->MsgHTML($body);
$mail->IsHTML(true); // send as HTML
$mail->Send();
echo 'Message has been sent.';
} catch (phpmailerException $e) {
echo $e->errorMessage();
}
?>