Zend Framework框架之Zend_Mail實現(xiàn)發(fā)送Email郵件驗證功能及解決標(biāo)題亂碼的方法
本文實例講述了Zend Framework框架之Zend_Mail實現(xiàn)發(fā)送Email郵件驗證功能及解決標(biāo)題亂碼的方法。分享給大家供大家參考,具體如下:
Zend Framework 里Zend_Mail這個組件用起來還是很方便的..它提供了通用化的編寫與發(fā)送文本內(nèi)容的郵件,當(dāng)然它也兼容MIME標(biāo)準(zhǔn)的多個多個段的郵件消息的功能.Zend_Mail里通過默認的Zend_Mail_Transport_SendMail傳輸或能過Zend_Mail_Transport_Smtp來發(fā)送我們的電子郵件.
Zend_Mail發(fā)送最簡單的郵件功能.通過Zend_Mail_Transport_Sendmail發(fā)來送.我們只要指定郵件的一個收件人,一個主題,一個郵件內(nèi)容和一個發(fā)件人就可以了.它的代碼如下(有注解:):
<?php
require_once 'Zend/Mail.php';
$mail = new Zend_Mail("UTF-8");//設(shè)置郵件編碼
$mail->setBodyText('你的郵件內(nèi)容放在這里!.') //發(fā)送電子郵件地址以及一些發(fā)送人的說明信息
->setFrom('fromemail@example.com', '發(fā)送人的說明信息') //收信人電子郵件地址以及一些收信人的說明信息
->addTo('toemail@example.com', '收信人的說明信息') //電子郵件標(biāo)題,解決亂碼
->setSubject("=?UTF-8?B?".base64_encode('電子郵件標(biāo)題')."?=") ->send();
?>
另外一個就是通過一個SMTP發(fā)送電子郵件.不過你需要配置你的郵件服務(wù)器.這一步大家可以去GOOGLE一下..我就不在這里多說了.我這里是能守GOOGLE來實現(xiàn)發(fā)送電子郵件的..經(jīng)過我的測試.我的電子郵件到送到自己的Gmail和163(網(wǎng)易)的郵箱都沒有問題.亂碼問題也解決了..標(biāo)題長度限制問題也沒有出現(xiàn)..以前是自己參考網(wǎng)上改了Zend_Mail里面的函數(shù)..現(xiàn)在用1.6版的Zend Framework好像沒有這樣的問題..我想是ZF團隊改了里面的BUG吧...呵呵..
下面是自己的實現(xiàn)的代碼:
<?php
require_once ROOT_PATH . '/Zend/Mail.php';
require_once ROOT_PATH . '/Zend/Mail/Transport/Smtp.php';
$mail = new Zend_Mail("UTF-8");//設(shè)置郵件編碼
$config = array(
'auth'=>'login', 'username'=>"kylingood",//電子件用戶名
'password'=>"這里是填寫你電子郵件密碼",
'ssl'=>"ssl"
);
$transport = new Zend_Mail_Transport_Smtp('smtp.gmail.com',$config);
$mail->setDefaultTransport($transport);
$mailcontent='歡迎您的到來!<br /> 您的注冊名為:
'.$thisArray ['username'].'<br /> 您的密碼為:'.$thisArray ['userpass'].'
<br /> 請您點擊這里的地址:<a href="#"><font color="red">激活
</font> </a>您的帳號!
請盡快刪除此郵件,以免別人偷看到您的密碼<br /> 如果忘了密碼,
可以到社區(qū)寫信請管理員重新設(shè)定<br />';
$mail->setBodyHtml($mailcontent);//可以發(fā)送HTML的郵件.真方便!
$mail->setFrom('kylingood@gmail.com', 'kylingood');
$mail->addTo($email, 'kylingood'); $title=$thisArray ['username'].',用戶您好,這是網(wǎng)站激活驗證郵件!';
$mail->setSubject("=?UTF-8?B?".base64_encode($title)."?=");
$mail->send();
?>
好了..大致用Zend_Mail發(fā)送郵件就是這個原理..當(dāng)然還有更多高級點的用法.比如說郵件發(fā)送附件..一次性發(fā)送多個電子郵件.還有還有就是使用不同的Transport對象來發(fā)送不同的郵件...大家可以參考ZF手冊來做啊...希望大家可以多多交流..
更多關(guān)于zend相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《Yii框架入門及常用技巧總結(jié)》、《ThinkPHP入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Zend Framework框架的PHP程序設(shè)計有所幫助。
- Zend Framework入門教程之Zend_Db數(shù)據(jù)庫操作詳解
- zend框架實現(xiàn)支持sql server的操作方法
- ZendFramework框架實現(xiàn)連接兩個或多個數(shù)據(jù)庫的方法
- Zend Framework開發(fā)入門經(jīng)典教程
- Zend Framework教程之Zend_Config_Ini用法分析
- Zend Framework教程之Zend_Config_Xml用法分析
- Zend Framework教程之Zend_Registry對象用法分析
- Zend Framework框架Smarty擴展實現(xiàn)方法
- Zend Framework框架路由機制代碼分析
- Zend Framework入門教程之Zend_Mail用法示例
相關(guān)文章
PHP?filesize()函數(shù)獲取文件大小信息用法實例
在PHP開發(fā)中,我們常常需要獲取文件的大小信息,而PHP提供了一個便捷的函數(shù)來實現(xiàn)這個目的——filesize()函數(shù),filesize()函數(shù)用于獲取指定文件的大小,返回值為文件的大?。ㄒ宰止?jié)為單位),本文將詳細介紹filesize()函數(shù)的用法,并提供具體的代碼示例2024-01-01
使用PHP抓取微博數(shù)據(jù)實現(xiàn)demo及原理解析
這篇文章主要為大家介紹了使用PHP抓取微博數(shù)據(jù)實現(xiàn)demo及原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-05-05
PHP 二維關(guān)聯(lián)數(shù)組根據(jù)其中一個字段排序(推薦)
這篇文章主要介紹了PHP 二維關(guān)聯(lián)數(shù)組根據(jù)其中一個字段排序的實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-04-04
laravel 配置路由 api和web定義的路由的區(qū)別詳解
今天小編就為大家分享一篇laravel 配置路由 api和web定義的路由的區(qū)別詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
分享下頁面關(guān)鍵字抓取www.icbase.com站點代碼(帶asp.net參數(shù)的)
這篇文章主要介紹了分享下頁面關(guān)鍵字抓取www.icbase.com站點代碼(帶asp.net參數(shù)的)的相關(guān)資料,需要的朋友可以參考下2014-01-01

