>  기사  >  백엔드 개발  >  Swift Mailer PHP邮件类

Swift Mailer PHP邮件类

WBOY
WBOY원래의
2016-06-20 13:02:281811검색

一、Swift Mailer简介

Swift Mailer是一个PHP邮件发送类。它不依赖于PHP自带的mail()函数,因为该函数在发送多个邮件时占用的系统资源很高。Swift直接与SMTP 服务器通讯,具有非常高的发送速度和效率。

Swift Mailer的特点:

1、使用SMTP、sendmail、postfix或者你自己可以自定义传输实现发送电子邮件

2、需要用户名和密码和或加密支持的服务器

3、从头部注入攻击保护不请求数据的内容

4、发送MIME兼容的HTML/multipart邮件

5、使用事件驱动的插件方式来定制库

6、处理大附件和内嵌/嵌入图像时低内存占用

7、swiftmailer发邮件效率比phpmailer高很多,使用起来很方便

二、Swift Mailer使用

require_once 'lib/swift_required.php';
function sendMail(){
/*
$transport = Swift_SmtpTransport::newInstance('smtp.163.com', 25);
$transport->setUsername('username@163.com');
$transport->setPassword('password');
$transport = Swift_SendmailTransport::newInstance('/usr/sbin/exim -bs');
$transport = Swift_MailTransport::newInstance();
*/
$transport = Swift_SmtpTransport::newInstance('smtp.163.com', 25);
$transport->setUsername('username@163.com');
$transport->setPassword('password');
$mailer = Swift_Mailer::newInstance($transport);
$message = Swift_Message::newInstance();
$message->setFrom(array('username@163.com' => 'name'));
$message->setTo(array('whoever@163.com' => 'Mr.Right', 'whoever@qq.com' => 'Mr.Wrong'));
$message->setSubject("This is a subject");
$message->setBody('Here is the message', 'text/html', 'utf-8'); //'text/plain'
$message->attach(Swift_Attachment::fromPath('pic.jpg', 'image/jpeg')->setFilename('rename_pic.jpg'));
try{
$mailer->send($message);
}
catch (Swift_ConnectionException $e){
echo 'There was a problem communicating with SMTP: ' . $e->getMessage();
}
}

项目地址:http://swiftmailer.org/


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.