Zend Framework框架之Zend_Mail实现发送Email邮件验证功能及解决标题乱码的方法


Posted in PHP onMarch 21, 2016

本文实例讲述了Zend Framework框架之Zend_Mail实现发送Email邮件验证功能及解决标题乱码的方法。分享给大家供大家参考,具体如下:

Zend Framework 里Zend_Mail这个组件用起来还是很方便的..它提供了通用化的编写与发送文本内容的邮件,当然它也兼容MIME标准的多个多个段的邮件消息的功能.Zend_Mail里通过默认的Zend_Mail_Transport_SendMail传输或能过Zend_Mail_Transport_Smtp来发送我们的电子邮件.

Zend_Mail发送最简单的邮件功能.通过Zend_Mail_Transport_Sendmail发来送.我们只要指定邮件的一个收件人,一个主题,一个邮件内容和一个发件人就可以了.它的代码如下(有注解:):

<?php
require_once 'Zend/Mail.php';
$mail = new Zend_Mail("UTF-8");//设置邮件编码
$mail->setBodyText('你的邮件内容放在这里!.') //发送电子邮件地址以及一些发送人的说明信息
->setFrom('fromemail@example.com', '发送人的说明信息') //收信人电子邮件地址以及一些收信人的说明信息
->addTo('toemail@example.com', '收信人的说明信息') //电子邮件标题,解决乱码
->setSubject("=?UTF-8?B?".base64_encode('电子邮件标题')."?=")  ->send();
?>

另外一个就是通过一个SMTP发送电子邮件.不过你需要配置你的邮件服务器.这一步大家可以去GOOGLE一下..我就不在这里多说了.我这里是能守GOOGLE来实现发送电子邮件的..经过我的测试.我的电子邮件到送到自己的Gmail和163(网易)的邮箱都没有问题.乱码问题也解决了..标题长度限制问题也没有出现..以前是自己参考网上改了Zend_Mail里面的函数..现在用1.6版的Zend Framework好像没有这样的问题..我想是ZF团队改了里面的BUG吧...呵呵..

下面是自己的实现的代码:

<?php
require_once ROOT_PATH . '/Zend/Mail.php';
require_once ROOT_PATH . '/Zend/Mail/Transport/Smtp.php';
$mail = new Zend_Mail("UTF-8");//设置邮件编码
$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 /> 如果忘了密码,
可以到社区写信请管理员重新设定<br />';
$mail->setBodyHtml($mailcontent);//可以发送HTML的邮件.真方便! 
$mail->setFrom('kylingood@gmail.com', 'kylingood');
$mail->addTo($email, 'kylingood'); $title=$thisArray ['username'].',用户您好,这是网站激活验证邮件!';
$mail->setSubject("=?UTF-8?B?".base64_encode($title)."?=");
$mail->send();
?>

好了..大致用Zend_Mail发送邮件就是这个原理..当然还有更多高级点的用法.比如说邮件发送附件..一次性发送多个电子邮件.还有还有就是使用不同的Transport对象来发送不同的邮件...大家可以参考ZF手册来做啊...希望大家可以多多交流..

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

PHP 相关文章推荐
特详细的PHPMYADMIN简明安装教程
Aug 01 PHP
最新的php 文件上传模型,支持多文件上传
Aug 13 PHP
javascript,php获取函数参数对象的代码
Feb 03 PHP
PHP的explode和implode的使用说明
Jul 17 PHP
解析php二分法查找数组是否包含某一元素
May 23 PHP
基于php冒泡排序算法的深入理解
Jun 09 PHP
php 检查电子邮件函数(自写)
Jan 16 PHP
php实现保存submit内容之后禁止刷新
Mar 19 PHP
PHP获取网页标题的3种实现方法代码实例
Apr 11 PHP
WordPress中限制非管理员用户在文章后只能评论一次
Dec 31 PHP
ThinkPHP设置禁止百度等搜索引擎转码(简单实用)
Feb 15 PHP
mysql查找删除重复数据并只保留一条实例详解
Sep 24 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
Mar 21 #PHP
Zend Framework实现多文件上传功能实例
Mar 21 #PHP
Zend Framework入门之环境配置及第一个Hello World示例(附demo源码下载)
Mar 21 #PHP
Zend Framework教程之连接数据库并执行增删查的方法(附demo源码下载)
Mar 21 #PHP
Zend Framework框架教程之Zend_Db_Table_Rowset用法实例分析
Mar 21 #PHP
Zend Framework教程之Zend_Db_Table_Row用法实例分析
Mar 21 #PHP
Zend Framework教程之Zend_Db_Table用法详解
Mar 21 #PHP
You might like
php 过滤器实现代码
2010/08/09 PHP
解密ThinkPHP3.1.2版本之模板继承
2014/06/19 PHP
PHP函数实现分页含文本分页和数字分页
2014/10/23 PHP
PHP 返回13位时间戳的实现代码
2016/05/13 PHP
PHP自定义函数实现格式化秒的方法
2016/09/14 PHP
PHP实现求解最长公共子串问题的方法
2017/11/17 PHP
小议Function.apply()之二------利用Apply的参数数组化来提高 JavaScript程序性能
2006/11/30 Javascript
js 图片缩放(按比例)控制代码
2009/05/27 Javascript
关于JavaScript定义类和对象的几种方式
2010/11/09 Javascript
在新窗口打开超链接的方法小结
2013/04/14 Javascript
javascript弹出层输入框(示例代码)
2013/12/11 Javascript
js中typeof的用法汇总
2013/12/12 Javascript
javascript字符串替换及字符串分割示例代码
2013/12/12 Javascript
网站繁简切换的JS遇到页面卡死的解决方法
2014/03/12 Javascript
javascript操作Cookie(设置、读取、删除)方法详解
2015/03/18 Javascript
JavaScript中利用Array和Object实现Map的方法
2015/07/27 Javascript
js钢琴按钮波浪式图片排列效果代码分享
2015/08/26 Javascript
Node.js实用代码段之正确拼接Buffer
2016/03/17 Javascript
完美解决node.js中使用https请求报CERT_UNTRUSTED的问题
2017/01/08 Javascript
在vue项目中引用Iview的方法
2018/09/14 Javascript
详解 微信小程序开发框架(MINA)
2019/05/17 Javascript
在vue中使用vuex,修改state的值示例
2019/11/08 Javascript
javascript设计模式 ? 观察者模式原理与用法实例分析
2020/04/22 Javascript
[01:02:55]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
python用ConfigObj读写配置文件的实现代码
2013/03/04 Python
对于Python中RawString的理解介绍
2016/07/07 Python
Python模糊查询本地文件夹去除文件后缀的实例(7行代码)
2017/11/09 Python
windows上安装python3教程以及环境变量配置详解
2019/07/18 Python
python识别文字(基于tesseract)代码实例
2019/08/24 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
Python使用pdb调试代码的技巧
2020/05/03 Python
python3排序的实例方法
2020/10/20 Python
Net-A-Porter美国官网:全球时尚奢侈品名站
2017/02/11 全球购物
一套中级Java程序员笔试题
2015/01/14 面试题
租赁意向书范本
2014/04/01 职场文书
2019各种保证书范文
2019/06/24 职场文书