Магия с темой письма

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
NEIRON
Сообщения: 102
Зарегистрирован: 2013.10.23, 07:18

Магия с темой письма

Сообщение NEIRON »

Конфигурация

Код: Выделить всё

 'mailer' => [
            'class' => 'yii\swiftmailer\Mailer',
            'useFileTransport' => false,
            'messageConfig' => [
                'charset' => 'UTF-8',
                'from' => ['site@mail.ru' => 'SITE'],
            ]
        ]
Отправка письма

Код: Выделить всё

 Yii::$app->mailer->compose(
                '@app/modules/jk/mails/manager/manager',
                []
            )
                ->setTo($user->email)
                ->setSubject('Проект / Жилищная кампания / Заявка №'.$order_id.' / Согласование руководителем')
                ->send();
Письмо приходит. Тестирую на Яндексе. Но заголовок получается без номера и без последней буквы М
Проект / Жилищная кампания / Заявка №777 / Согласование руководителем

Т.е. я вроде как понимаю, что слеши что-то портят, но не могу понять, что именно. Если вместо № писать # - то номер заявки уже приходит в теме письма. Если в конце написать "руководителемм" - то 2 "м" приходит в теме письма, если одна, то нет
Пробовал вставлять html-коды слешей, тоже пропадает номер заявки и последняя буква М
Аватара пользователя
Dominus
Сообщения: 892
Зарегистрирован: 2013.03.14, 21:27
Откуда: Россия, Иваново
Контактная информация:

Re: Магия с темой письма

Сообщение Dominus »

Странно, что то не удалось смоделировать:

Код: Выделить всё

//...
'mailer' => [
    'useFileTransport' => false,
    'messageConfig' => [
        'charset' => 'UTF-8'
    ],
    'transport' => [
        'class' => 'Swift_SmtpTransport',
        'host' => 'smtp.yandex.ru',
        'username' => '*******',
        'password' => '******',
        'port' => '465',
        'encryption' => 'ssl',
    ],
],
//...

Код: Выделить всё

$order_id = '777';
Yii::$app->mailer->compose()
    ->setTo($email)
    ->setFrom([$email => 'Мой сайт'])
    ->setReplyTo([$this->email => $this->name])
    ->setSubject('Проект / Жилищная кампания / Заявка №' . $order_id . ' / Согласование руководителем')
    ->setTextBody($this->body)
    ->send();
Изображение
Не спорь с дураком, иначе окружающие не правильно поймут кто из вас дурак!
Ответить