首页 > 其他 > 详细

ZendFramework2学习笔记 发送email

时间:2014-12-02 16:35:24      阅读:290      评论:0      收藏:0      [点我收藏+]

    ZF2中发送email有2种方式,一是通过系统的邮件程序发送email,二是通过smtp协议使用远程的smtp服务器发送email。

    相关的类有:

use Zend\Mail\Message;//email消息类
use Zend\Mail\Transport\Sendmail;//通过系统邮件程序的发送类
use Zend\Mail\Transport\Smtp;//通过smtp协议使用远程smtp服务器的发送类
use Zend\Mail\Transport\SmtpOptions;//设置smtp类的参数类

    使用也比较简单,以下以mail.qq.com的smtp服务器为例,不多的代码就能实现发送email的功能:

use Zend\Mail\Message;
use Zend\Mail\Transport\Sendmail;
use Zend\Mail\Transport\Smtp;
use Zend\Mail\Transport\SmtpOptions;

class TestController extends AbstractActionController {

    //通过smtp发送邮件
    public function sendsmtpmailAction(){
        $msg = new Message();
        $msg->setFrom("xxxxx@qq.com", "xxxxx")
                ->setTo("yyyyy@qq.com", "yyyyy")
                ->setSubject("Email Title")
                ->setBody('This is an email !');
        $smtpOpt = new SmtpOptions(array(
            'name' => 'smtp.qq.com',
            'host' => 'smtp.qq.com',//qq的免费邮箱服务器
            'port' => 25,
            'connection_class' => 'login',
            'connection_config' => array(
                'username' => 'xxxxx',//qq账号,或者申请了字符邮箱名的字符邮箱名
                'password' => '1234567890',//邮箱登陆密码
            ),
        ));
        $trans = new Smtp();
        $trans->setOptions($smtpOpt);
        $trans->send($msg);
        return new JsonModel();
    }

    //通过系统的邮件程序发送邮件
    public function sendmailAction(){
        $msg = new Message();
        $msg->setFrom("xxxxx@example.com", "xxxxx")
                ->setTo("yyyyy@qq.com", "yyyyy")
                ->setSubject("Email Title")
                ->setBody('This is an email !');
        $trans = new Sendmail();
        $trans->send($msg);
        return new JsonModel();
    }
}






ZendFramework2学习笔记 发送email

原文:http://blog.csdn.net/liuyangwuhan1980/article/details/41680211

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!