Gestion des courriels : exemple
[zf2.biz/galerie.git] / module / Galerie / src / Galerie / Mail / MailSender.php
1 <?php
2
3 namespace Galerie\Mail; 
4
5 use Zend\Mail\Transport\Smtp as SmtpTransport;
6 use Zend\Mail\Transport\SmtpOptions;
7 use Zend\Mail\Message;
8
9 use Zend\Mime\Part as MimePart;
10 use Zend\Mime\Mime as Mime;
11 use Zend\Mime\Message as MimeMessage;
12
13
14
15
16 class MailSender
17 {
18
19     protected static $transport = null;
20
21     public static function initialize($params)
22     {
23         static::$transport = new SmtpTransport();
24         static::$transport->setOptions(new SmtpOptions(array(
25             'name' => $params['name'],
26             'host' => $params['host'],
27             'port' => $params['port'],
28         )));
29     }
30
31
32     public function send(
33         $sender, $sender_name, $to, $to_name, $subject, $text_body, $html_body, $logo
34     ) {
35         // Création de la partie texte
36         $text = new MimePart($text_body);
37         $text->type = Mime::TYPE_TEXT;
38
39         // Création de la partie HTML
40         $html = new MimePart($html_body);
41         $html->type = Mime::TYPE_HTML;
42
43         // Création du message
44         $body = new MimeMessage();
45         $body->setParts(array($text, $html));
46         
47         $mail = new Message();        
48         $mail->setBody($body);
49         $mail->setFrom($sender, $sender_name);
50         $mail->addTo($to, $to_name);
51         $mail->setSubject($subject);
52
53         static::$transport->send($mail);
54     }
55
56 }
57