在PHP中用Socket发送电子邮件第44-49行,处理DATA指令,期望响应码为354。 第51-76行,生成邮件体,并发送。 第52-56行,如果$subject不为空,则查找邮件体中是否有主题部分,如果没有,则加上主题部分。 第59-63行,如果$from不为空,则查找邮件体中是否有发信人部分,如果没有,则加上发信人部分。 第66-70行,如果$to不为空,则查找邮件体中是否有收信人部分,如果没有,则加上收信人部分。 第73-74行,查找邮件体是否有了结束行,如果没有则加上邮件体的结束行(以"."作为单独的一行的特殊行)。 第76行,发送邮件体。 第78-83行,执行QUIT结否与服务器的连接,期望响应码为250。 第85行,返回处理成功标志(true)。 第81-91行,与服务器连接失败的处理。 以上为整个send_mail类的实现,应该不是很难的。 下面给出一个实例。 邮件发送实例 先给出一个最简单的实例: -------------------------------------------------------------------------------- 1 include "sendmail.class.php3"; 2 $email="Hello, this is a test letter!"; 3 $sendmail=new send_mail("smtp.263.net", "limodou", true); //显示调示信息 4 if($sendmail->send("chatme@263.net", "chatme@263.net", "test", $email)) 5 { 6 echo "发送成功! "; 7 } 8 else 9 { 10 echo "发送失败! "; 11 } ?> -------------------------------------------------------------------------------- 第1行,装入send_mail类。 第3行,创建一个类的实例,且设置显示调示信息,如果不想显示,可以 $sendmail=new send_mail("smtp.263.net");。 第4行,发送邮件。 很简单,不是吗?下面再给合以前的发送MIME邮件的例子,给出一个发送HTML附件的例子。 -------------------------------------------------------------------------------- include "MIME.class.php3"; //注,在发送MIME邮件一文中,这个类文件名为MIME.class,在此处我改成这样的 $to = 'chatme@263.net'; //改为收信人的邮箱 $str = "Newsletter for ".date('M Y', time()); //信息被我改少了 $html_data = ' Hello! This is a test! '; //生成MIME类实例 $mime = new MIME_mail("chatme@263.net", $to, $str); //添加HTML附件 $mime->attach($html_data, "", HTML, BASE64); //注释掉,采用我的发送邮件处理 //$mime->send_mail(); //生成邮件 $mime->gen_email(); //显示邮件信息 //echo $mime->email." "; //包含sendmail文件 include "sendmail.class.php3"; //创建实例 $sendmail=new send_mail("smtp.263.net", "limodou", true); //发送邮件 $sendmail->send("chatme@263.net", "chatme@263.net", $str, $mime->email); ?> -------------------------------------------------------------------------------- 注释写的很清楚,就不再做更多的解释了。如果实际应用中,请将send_mail构造函数中的debug设为false或不写即可。, 上一篇:用PHP编制邮件转发通用程序 下一篇:用ASP判断Email地址是否有效 更多相关文章
|
推荐文章
精彩文章
|