PHP下MAIL的另一解決方案
更新時間:2006年10月09日 00:00:00 作者:
前一段時間我接觸到DEC Tru64 Unix 我在上面裝了PHP+APACHE,可以用提供的mail函數(shù)始終不能正常發(fā)信,于是自編了一個函數(shù),它利用UNIX下的管道和PHP的SOCK函數(shù)進行發(fā)信,經(jīng)過實驗非常駐成功,下面是此函數(shù)原代碼。
function mymail($mto,$mcc,$msubject,$mbody)
{
$from="webmaster@backhome.com.cn";
$sign = "\n";//隨你便寫些什么
$sendmailpath="/usr/lib/sendmail";//Semdmail路徑
$bound = "========_".uniqid("BCFMail")."==_";//分界符
$headers = "MIME-Version: 1.0\n".
"Content-Type: multipart/mixed; boundary=\"$bound\"\n".
"Date: ".date("D, d M H:i:s Y ")."\n".
"From: $from\n".
"To: $mto\n".
"Cc: $mcc\n".
"Subject: $msubject\n".
"Status: \n".
"X-Status:\n".
"X-Mailer: MY Email Interface\n".
"X-Keywords:\n\n";
$content="--".$bound."\n"."Content-Type:text/plain;charset=\"GB2312\"\n\n".$mbody.$sign."\n";
$end = "\n"."--".$bound."--\n";
$sock = popen("$sendmailpath -t -f 'webmaster@backhome.com.cn'",'w');
fputs($sock, $headers);
fputs($sock, $content);
fputs($sock, $end);
fputs($sock, ".\n");
fputs($sock, "QUIT\n");
pclose($sock);
}
function mymail($mto,$mcc,$msubject,$mbody)
{
$from="webmaster@backhome.com.cn";
$sign = "\n";//隨你便寫些什么
$sendmailpath="/usr/lib/sendmail";//Semdmail路徑
$bound = "========_".uniqid("BCFMail")."==_";//分界符
$headers = "MIME-Version: 1.0\n".
"Content-Type: multipart/mixed; boundary=\"$bound\"\n".
"Date: ".date("D, d M H:i:s Y ")."\n".
"From: $from\n".
"To: $mto\n".
"Cc: $mcc\n".
"Subject: $msubject\n".
"Status: \n".
"X-Status:\n".
"X-Mailer: MY Email Interface\n".
"X-Keywords:\n\n";
$content="--".$bound."\n"."Content-Type:text/plain;charset=\"GB2312\"\n\n".$mbody.$sign."\n";
$end = "\n"."--".$bound."--\n";
$sock = popen("$sendmailpath -t -f 'webmaster@backhome.com.cn'",'w');
fputs($sock, $headers);
fputs($sock, $content);
fputs($sock, $end);
fputs($sock, ".\n");
fputs($sock, "QUIT\n");
pclose($sock);
}
相關(guān)文章
php面向?qū)ο笕ヂ?(二) 實例化對象 使用對象成員
我們上面說過面向?qū)ο蟪绦虻膯挝痪褪菍ο?,但對象又是通過類的實例化出來的,既然我們類會聲明了,下一步就是實例化對象了。2009-09-09用Socket發(fā)送電子郵件(利用需要驗證的SMTP服務(wù)器)
用Socket發(fā)送電子郵件(利用需要驗證的SMTP服務(wù)器)...2006-10-10