PHP使用pear實(shí)現(xiàn)mail發(fā)送功能 windows環(huán)境下配置pear
PHP發(fā)郵件可以用其自帶mail()函數(shù),但是這個(gè)函數(shù)很不好使,需要配置郵件服務(wù)器,并且不支持smtp驗(yàn)證,在很多場(chǎng)合無(wú)法正常的工作. 找了個(gè)代碼發(fā)郵件,但總是出錯(cuò),我在這里用PEAR的Mail類,使用smtp發(fā)郵件.
首先安裝,我推陳用最新版的PHP5,因?yàn)槲矣肞HP4出現(xiàn)了很多問(wèn)題,大多是因?yàn)槟切┓庋b好的類版本太高,與PHP4不兼容的原故吧.
安裝方法:
1.在php目錄中雙擊go-pear.bat。
2.按照提示輸入一些設(shè)置信息,主要是問(wèn)直接訪問(wèn)外網(wǎng),還是用代理,若無(wú)代理服務(wù)器則直接回車,我是直接按回車.
3.然后會(huì)提示一些包和PHP綁定,選擇Y 。
4.然后安裝基本包和提示安裝成功,就這么簡(jiǎn)單。
5.打開(kāi)windows目錄下的php.ini文件,然后查找到如下的地方:
; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
;
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"
把最后一行的注釋去掉,然后把后面路徑改成你的PEAR路徑,例如:
include_path = ".;c:\php\pear\"
保存PHP.INI,然后重新啟動(dòng)APACHE即可。
現(xiàn)在PEAR已經(jīng)安好了,我們要用到的類放在php目錄下的pear文件夾下,但是現(xiàn)在沒(méi)有多少可用的類,我們要去網(wǎng)上下載并安裝.
在你的PHP根目錄中可以找到PEAR.bat文件(執(zhí)行上邊的安裝才會(huì)有這個(gè)東西),這是管理pear的命令,在CMD中使用,要設(shè)置環(huán)境變量PATH,或雙擊生成的EV_XXX.REG文件。它的部分命令功能如下:
1、安裝:
從網(wǎng)絡(luò)安裝一個(gè)pear類庫(kù):
pear install packagename
下載 packages 但不安裝:
pear download packagename
pear download-all
安裝已下載的package:
pear install filename.tgz
2、列表:
目前pear網(wǎng)站上所有可取得pear類庫(kù)列表:
pear remote-list
列出已安裝package:
pear list
列出可以升級(jí)的package:
pear list-upgrades
3、更新(升級(jí)):
更新package:
pear upgrade packagename
pear upgrade-all
4、移除:
刪除已安裝的package:
pear uninstall packagename
我們從cmd進(jìn)入PHP目錄,執(zhí)行pear install mail
如果安裝過(guò)程提示某些庫(kù)沒(méi)有安裝,則繼續(xù)安裝這些庫(kù)如圖:
這繼續(xù)安裝:
出來(lái)一些信息,會(huì)提示安裝成功,這時(shí)pear目錄下多出來(lái)一個(gè)mail目錄,同時(shí)有一個(gè)mail.php,這是我們一會(huì)要引用的文件.
下邊是我們用來(lái)發(fā)郵件的代碼:
<? require_once 'Mail.php'; flush(); $conf['mail'] = array( 'host' => 'mail.nenu.edu.cn', //smtp服務(wù)器地址,可以用ip地址或者域名 'auth' => true, //true表示smtp服務(wù)器需要驗(yàn)證,false代碼不需要 'username' => 'guanhf844', //用戶名 'password' => '你的密碼' //密碼 ); $headers['From'] = 'guanhf844@nenu.edu.cn'; //發(fā)信地址 $headers['To'] = 'chf007server@163.com'; //收信地址 $headers['Subject'] = 'test mail send by php'; //郵件標(biāo)題 $mail_object = &Mail::factory('smtp', $conf['mail']); $body = '<<< MSG hello world!!! MSG'; //郵件正文 $mail_res = $mail_object->send($headers['To'], $headers, $body); //發(fā)送 if( PEAR::isError($mail_res) ){ //檢測(cè)錯(cuò)誤 die($mail_res->getMessage()); } echo 'Send finished.'; ?>
經(jīng)測(cè)試發(fā)送成功,速度挺快的,別的郵箱沒(méi)有測(cè)試。
以上就是PHP使用pear實(shí)現(xiàn)mail發(fā)送功能的全部代碼,希望對(duì)大家的學(xué)習(xí)有所幫助。
- 使用PHPStorm+XDebug搭建單步調(diào)試環(huán)境
- Mac OSX下使用MAMP安裝配置PHP開(kāi)發(fā)環(huán)境
- 使用WAMP搭建PHP本地開(kāi)發(fā)環(huán)境
- Mac系統(tǒng)下使用brew搭建PHP(LNMP/LAMP)開(kāi)發(fā)環(huán)境
- mac環(huán)境中使用brew安裝php5.5.15
- nginx php-fpm環(huán)境中chroot功能的配置使用方法
- CentOS 5.5使用yum來(lái)安裝LAMP(php運(yùn)行環(huán)境)
- 如何在PHP環(huán)境中使用ProtoBuf數(shù)據(jù)格式
相關(guān)文章
php圖片處理函數(shù)獲取類型及擴(kuò)展名實(shí)例
這篇文章主要介紹了php圖片處理函數(shù)獲取類型及擴(kuò)展名的方法,包括image2wbmp、image_type_to_extension、image_type_to_mime_type等函數(shù)的具體使用,具有不錯(cuò)的借鑒與學(xué)習(xí)價(jià)值,需要的朋友可以參考下2014-11-11php實(shí)現(xiàn)四舍五入的方法小結(jié)
這篇文章主要介紹了php實(shí)現(xiàn)四舍五入的方法,實(shí)例總結(jié)了php實(shí)現(xiàn)四舍五入的三種常用方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03PHP error_log()將錯(cuò)誤信息寫入一個(gè)文件(定義和用法)
PHP error_log()定義和用法,帶有二個(gè)簡(jiǎn)單小例子加函數(shù)解釋2013-10-10