zend-blog-3-backend

Форк
0
/
EmailMessageDTO.php 
84 строки · 1.4 Кб
1
<?php
2

3
namespace App\DTO;
4

5
use Serializable;
6

7
class EmailMessageDTO implements Serializable
8
{
9
    /**
10
     * @var string
11
     */
12
    public string $subject;
13

14
    /**
15
     * @var string|array
16
     */
17
    public $from;
18

19
    /**
20
     * @var string|array
21
     */
22
    public $to;
23

24
    /**
25
     * @var string|null
26
     */
27
    public ?string $messageText;
28

29
    /**
30
     * @var string|null
31
     */
32
    public ?string $messageHtml;
33

34
    /**
35
     * @var int
36
     */
37
    public $type = 0;
38

39
    /**
40
     * @var string|null
41
     */
42
    public $unsubscribeLink;
43

44
    /**
45
     * @return string|null
46
     */
47
    public function serialize()
48
    {
49
        return serialize([
50
            $this->subject,
51
            $this->from,
52
            $this->to,
53
            $this->type,
54
            $this->unsubscribeLink,
55
            $this->messageText,
56
            $this->messageHtml,
57
        ]);
58
    }
59

60
    /**
61
     * @param $data
62
     */
63
    public function unserialize($data)
64
    {
65
        list(
66
            $this->subject,
67
            $this->from,
68
            $this->to,
69
            $this->type,
70
            $this->unsubscribeLink,
71
            $this->messageText,
72
            $this->messageHtml
73
            ) = unserialize($data, ['allowed_classes' => false]);
74
    }
75

76
    public function getRecipientEmail(): string
77
    {
78
        if (is_array($this->to)) {
79
            return array_key_first($this->to);
80
        }
81

82
        return $this->to;
83
    }
84
}
85

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.