РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
793 of 1361 menu

Класс Envelope

Класс Envelope представляет собой конверт электронного письма. Он хранит адреса отправителя и получателей, а также тему письма, которая видна в почтовом клиенте до открытия сообщения. Объект Envelope можно передать в метод envelope объекта Email, чтобы явно задать эти данные. Первым параметром конструктора передаётся адрес отправителя, вторым - массив адресов получателей, третьим - массив адресов копии, четвёртым - массив адресов скрытой копии.

Синтаксис

new Envelope( Address $sender, array $recipients = [], array $cc = [], array $bcc = [] )

Пример

Давайте создадим конверт с отправителем и одним получателем:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Mailer\MailerInterface; use Symfony\Component\Mime\Address; use Symfony\Component\Mime\Email; use Symfony\Component\Mime\Envelope; class MailController extends AbstractController { public function send(MailerInterface $mailer): Response { $envelope = new Envelope( new Address('sender@example.com', 'Sender'), [new Address('user@example.com', 'User')] ); $email = (new Email()) ->subject('hello') ->text('abcde') ->envelope($envelope); $mailer->send($email); return new Response('sent'); } } ?>

Результат выполнения кода:

"sent"

Пример

Давайте добавим в конверт адреса копии и скрытой копии:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Mailer\MailerInterface; use Symfony\Component\Mime\Address; use Symfony\Component\Mime\Email; use Symfony\Component\Mime\Envelope; class MailController extends AbstractController { public function send(MailerInterface $mailer): Response { $envelope = new Envelope( new Address('sender@example.com', 'Sender'), [new Address('user@example.com', 'User')], [new Address('cc@example.com', 'Cc')], [new Address('bcc@example.com', 'Bcc')] ); $email = (new Email()) ->subject('article') ->text('hello') ->envelope($envelope); $mailer->send($email); return new Response('sent'); } } ?>

Результат выполнения кода:

"sent"

Пример

Давайте получим данные конверта через методы getSender и getRecipients:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Mime\Address; use Symfony\Component\Mime\Envelope; class MailController extends AbstractController { public function show(): Response { $envelope = new Envelope( new Address('sender@example.com', 'Sender'), [new Address('user@example.com', 'User')] ); $sender = $envelope->getSender()->getAddress(); $recipients = $envelope->getRecipients(); return new Response($sender . ' / ' . $recipients[0]->getAddress()); } } ?>

Результат выполнения кода:

"sender@example.com / user@example.com"

Смотрите также

  • класс Email,
    который представляет электронное письмо
  • класс Address,
    который хранит адрес и имя получателя
  • метод from,
    который задаёт отправителя письма
  • метод to,
    который задаёт получателя письма
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить