真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

利用php實現(xiàn)郵件發(fā)送功能的方法有哪些-創(chuàng)新互聯(lián)

這篇文章給大家介紹利用php實現(xiàn)郵件發(fā)送功能的方法有哪些,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

為萬寧等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及萬寧網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為網(wǎng)站設計、成都網(wǎng)站建設、萬寧網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

一、使用PHP內(nèi)置的mail()函數(shù)


結(jié)果就直接報錯,如下:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() inD:/www/Zend/email/email.php on line 10

分析原因:本地需要有SMTP服務器,又改了下代碼:

結(jié)果還是錯誤:

Warning: mail() [function.mail]: SMTP server response: 553 authentication is required,smtp2,DNGowKD7v5BTDo9NnplVBA--.1171S2 1301220947 inD:/www/Zend/email/email.php on line 9

分析原因:需要驗證信息,怎么寫驗證信息呢?在哪里配置呢?帶著這些疑問參考一些技術文章后得出結(jié)論,使用mail()函數(shù)發(fā)送郵件就必須要有一臺無需SMTP驗證就可以發(fā)信的郵件服務器。但現(xiàn)在的SMTP郵件服務器基本上都是需要驗證的,所以要想使用它發(fā)郵件就只能自己在本地搭一個不需要驗證的SMTP服務器。搭建方法:用windows自帶的IIS就可以,或者從網(wǎng)上下載其他的SMTP服務器軟件。

結(jié)論:使用mail()函數(shù)發(fā)送郵件,就必須要有一臺不需要驗證的SMTP服務器。這樣的話配置工作會多一點,但是使用的時候就比較省事了,幾行代碼就可以。

二、使用封裝SMTP協(xié)議的郵件類

這種方法就比較常見了,尤其對于廣大自己沒有服務器,從網(wǎng)上購買虛擬主機的同學,第一種方法不現(xiàn)實,所以還是自己使用SMTP協(xié)議來發(fā)送郵件吧。

不過要完成這項工作的話,就需要你對SMTP協(xié)議有一定的了解,喜歡事必躬親的同學可以自己動手寫一個,喜歡拿來主義的同學就可以從網(wǎng)上下載了,有很多。

不過我比較推薦使用PEAR擴展中的Mail類功能強大:可以支持純文本、HTML格式的郵件;各字段都可設置編碼,正確配置不會出現(xiàn)中文亂碼情況;可以支持附件等等。

在服務器可以使用pear install Mail命令快速安裝,沒有足夠服務器權限的同學也可以直接下載類的PHP源碼包含進來就可以了。

注:Mail類依賴  Net/SMTP.php  和 Mail/mime.php ,要一塊下載,使用時一塊包含進來。

下面我舉例說明一下在Mail類發(fā)送郵件的方法吧,網(wǎng)上其他SMTP郵件類使用方法一塊也類似,可以參考:

"; 
 
// 收件人顯示信息 
$to = implode(',',$mailAddr); 
 
// 郵件標題 
$subject = "這是一封測試郵件"; 
 
// 郵件正文 
$content = "

隨便寫點什么

";    // 郵件正文類型,格式和編碼  $contentType = "text/html; charset=utf-8";    //換行符號 Linux: \n Windows: \r\n  $crlf = "\n";  $mime = new Mail_mime($crlf);  $mime->setHTMLBody($content);    $param['text_charset'] = 'utf-8';  $param['html_charset'] = 'utf-8';  $param['head_charset'] = 'utf-8';  $body = $mime->get($param);    $headers = array();  $headers["From"] = $from;  $headers["To"] = $to;  $headers["Subject"] = $subject;  $headers["Content-Type"] = $contentType;  $headers = $mime->headers($headers);    $smtp =& Mail::factory("smtp", $smtpinfo);      $mail = $smtp->send($mailAddr, $headers, $body);  $smtp->disconnect();    if (PEAR::isError($mail)) {   //發(fā)送失敗   echo 'Email sending failed: ' . $mail->getMessage()."\n";  }  else{   //發(fā)送成功   echo "success!\n";  }

如果從網(wǎng)上找的SMTP類都是高度封裝的,所以使用起來比上面會更簡單,但使用方法都是比較相似的。

結(jié)論:這種方式發(fā)送郵件無需裝任何軟件,只需要包含進來一個PHP類,然后多寫幾行配置代碼,就可以了。并且網(wǎng)上有很多示例的代碼,很多時候只要復制過來然后修改個別的幾個參數(shù)就可以用了,所以會很方便,推薦使用此方法。

關于利用php實現(xiàn)郵件發(fā)送功能的方法有哪些就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


當前標題:利用php實現(xiàn)郵件發(fā)送功能的方法有哪些-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://weahome.cn/article/ppcgd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部