ThinkPHP 3.2.3 使用 Swift Mailer 邮件系统发送邮件

SwiftMailer 下载地址:https://github.com/swiftmailer/swiftmailer

版本:swiftmailer-5.x

把压缩包解压到 /ThinkPHP/Library/Vendor 中。

配置文件 config.php

<?php
return array(
	//‘配置项‘=>‘配置值‘
	// 邮件配置
	‘SMTP‘	=>	‘smtp.XXX.cn‘,
	‘MAIL_PORT‘	=>	25,
	‘MAIL_USER‘ => ‘[email protected]‘, //邮箱用户名
	‘MAIL_PWD‘	=> ‘XXX‘, //发送邮箱密码或者授权码
	‘MAIL_FROM‘ => ‘[email protected]‘,
	‘MAIL_FROM_NAME‘ => ‘dee‘,
);

/Application/Home/Common/Swiftmail.class.php

<?php
namespace Home\Common;

class Swiftmail {
	// @param $host 邮件服务器地址
	// @param $port 端口号
	// @param $encryption_type 加密方式(例如:使用腾讯qq邮箱时此处填ssl,不加密不填写此项)
	// @param $user 用户名
	// @param $pwd 密码或授权码
	// @param $subject 邮件主题
	// @param $body 邮件内容
	// @param $from 邮件来自邮箱号
	// @param $from_name 邮件来自名称
	// @param $to 收件人邮箱
	public static function sendMail($to, $subject, $body, $encryption_type = null) {

		$host = C(‘SMTP‘);
		$port = C(‘MAIL_PORT‘);
		$user = C(‘MAIL_USER‘);
		$pwd = C(‘MAIL_PWD‘);
		$from = C(‘MAIL_FROM‘);
		$from_name = C(‘MAIL_FROM_NAME‘);

		Vendor(‘swiftmailer.lib.swift_required‘);

		$transport=\Swift_SmtpTransport::newInstance($host, $port, $encryption_type)
				->setUsername($user)
				->setPassword($pwd);

		$mailer =\Swift_Mailer::newInstance($transport);
		$message=\Swift_Message::newInstance()
						->setSubject($subject)
						->setFrom(array($from=>$from_name))
						->setTo($to)
						->setContentType("text/html")
						->setBody($body);
		$mailer->protocol=‘smtp‘;
		$mailer->send($message);
	}
}

  

控制器和方法(按需求确定位置)/Application/Home/Controller/IndexController.class.php

<?php
namespace Home\Controller;
use Think\Controller;
use Home\Common\Swiftmail;

class IndexController extends Controller {

    public function mail_send() {
    	$to = ‘[email protected]‘;
    	$subject = ‘SwiftMail测试标题‘;
    	$body = ‘<h1>SwiftMail演示</h1>这是dee对SwiftMail的测试内容‘;

    	try {
    		Swiftmail::sendMail($to, $subject, $body);
				echo ‘success‘;
			} catch(Swift_RfcComplianceException $e) {
				echo $e->getMessage();
			}
    }
}

  

运行后显示 success

收取邮件:

打开邮件:

参考:发送邮件Swift Mailer代替PHPmail

时间: 2024-10-11 13:00:08

ThinkPHP 3.2.3 使用 Swift Mailer 邮件系统发送邮件的相关文章

Python django实现简单的邮件系统发送邮件功能

Python django实现简单的邮件系统发送邮件功能 本文实例讲述了Python django实现简单的邮件系统发送邮件功能. django邮件系统 Django发送邮件官方中文文档 总结如下: 1.首先这份文档看三两遍是不行的,很多东西再看一遍就通顺了.2.send_mail().send_mass_mail()都是对EmailMessage类使用方式的一个轻度封装,所以要关注底层的EmailMessage.3.异常处理防止邮件头注入.4.一定要弄懂Email backends 邮件发送后

Postfix邮件系统(二)

Postfix邮件系统(二) 具体步骤: 1. 设置Cyrus SASL函数库,并启动saslauthd服务 建立SMTP认证配置文件/usr/lib/sasl2/smtpd.conf(注意不要将文件名smtpd.conf误写为smtp.conf).在该配置文件中设置了使用saslauthd服务作为认证方式,配置内容可参考/usr/lib/sasl2/Sendmail.conf文件. 2. 修改main.cf配置文件,添加SMTP认证配置,并重载服务 在上述配置参数中,SMTP认证相关的几行设置

24个有用的PHP类库分享

目前,PHP是用于Web开发的最流行的脚本语言.你可以在互联网上随手找到关于PHP大量资料,包括文档.教程.工具等等.PHP不仅是一种功能丰富的语言,它还能帮助开发人员轻松地创建更好的网络环境.为了进一步的帮助开发人员,小编将同大家一起分享一些免费并且高质量的PHP类库,希望能够帮助到大家.还在等什么,Let's Go! PhpFastCache PhpFastCache是一个高性能.分布式对象缓存系统,它旨在用于加快动态Web应用程序,以减轻数据库负载. pchart pchart是一个开源的

[转]非常实用的15款开源PHP类库

源文件:http://www.csdn.net/article/2013-10-09/2817123-PHP-Libraries 英文原文:https://codegeekz.com/useful-php-libraries-and-classes-for-developers/ 1.Requests Requests是一个用PHP编写的HTTP库,遵循ISC开源协议,托管在GitHub上.Requests取代了Python HTTP/1.1以外的一切工作———让你与Web服务可以无缝的结合.

Php 常用类

图表库下面的类库可以让你很简单就能创建复杂的图表和图片.当然,它们需要GD库的支持.pChart - 一个可以创建统计图的库.Libchart - 这也是一个简单的统计图库.JpGraph - 一个面向对象的图片创建类.Open Flash Chart - 这是一个基于Flash的统计图.RSS 解析解释RSS并是一件很单调的事情,不过幸好你有下面的类库可以帮助你方便地读取RSS的Feed.MagpieRSS - 开源的PHP版RSS解析器,据说功能强大,未验证.SimplePie - 这是一个

阿里云实战之一(必备程序安装)

为了放我的在线代码编辑器,我用了阿里云的空间,用的linux服务器,空间性能见探针http://www.wcodei.com/i.php 1.安装远程操作工具 下载putty.exe,输入公网ip,端口22,SSH连入,按提示输入root和密码登入. 2.安装apache,mysql,php 参见http://bbs.aliyun.com/read.php?spm=5176.7150518.1996836753.6.cw39IN&tid=130069 使用yum install httpd命令来

15款开源PHP类库

PHP库给开发者提供了一个标准接口,它帮助开发者在PHP里充分利用面向对象编程.这些库为特定类型的内置功能提供了一个标准的API,允许类可以与PHP引擎进行无缝的交互.此外,开发者使用这些类库还可以简化工作流程,提供工作效率. 下面就一起来看看这些非常实用且免费的类库吧,希望它们能助你一臂之力. 1.Requests Requests是一个用PHP编写的HTTP库,遵循ISC开源协议,托管在GitHub上.Requests取代了Python HTTP/1.1以外的一切工作———让你与Web服务可

非常实用的15款开源PHP类库

PHP库给开发者提供了一个标准接口,它帮助开发者在PHP里充分利用面向对象编程.这些库为特定类型的内置功能提供了一个标准的API,允许类可以与PHP引擎进行无缝的交互.此外,开发者使用这些类库还可以简化工作流程,提供工作效率. 下面就一起来看看这些非常实用且免费的类库吧,希望它们能助你一臂之力. 1.Requests Requests是一个用PHP编写的HTTP库,遵循ISC开源协议,托管在GitHub上.Requests取代了Python HTTP/1.1以外的一切工作———让你与Web服务可

qser-mailer: swiftmailer 的快捷助手

如果本文图片显示不出来,请看我的博客 http://vb2005xu.iteye.com/blog/2114518 近日在对charsen的修改版上进行了再次的修改与调整,对原版的qee v3 做了更多的bug修改,目前经过测试基本可以使用,虽然还有一些坑,但是代码量始终只有那么一点,填补起来应该很方便,加上qee-v3确实有些技术知识点可供学习.. 因 为 qee-v3 只给出了一些极简单的库支持,而邮件功能在项目开发过程中又是不可或缺的部分,所以就集成了swiftmailer, 这个库在国外