12.2. Zend_Mime_Message

12.2.1. Wprowadzenie

Zend_Mime_Message reprezetuje wiadomość zgodną z MIME, która zawiera jedną lub więcej odrębnych części (Reprezentowanych przez obiekty Zend_Mime_Part). Klasa Zend_Mime_Message, może wygenerować wieloczęściowe wiadomości zgodne z MIME z obiektów Zend_Mime_Part. Kodowanie i obsługa pól rozgraniczających są obsługiwane przez samą klasę. Obiekty Zend_Mime_Message mogą być także zrekonstruowane z podanych łańcuchów znaków (eksperymentalne). Klasa używana jest przez Zend_Mail.

12.2.2. Tworzenie instancji

Zend_Mime_Message nie posiada konstruktora.

12.2.3. Dodawanie części MIME

Obiekty Zend_Mime_Part mogą być dodane poprzez ich przekazanie do obiektu Zend_Mime_Message za pomocą metody ->addPart($part)

Tablica z wszystkimi obiektami Zend_Mime_Part z wiadomości Zend_Mime_Message jest zwraca za pomocą metody ->getParts(). Obiekty Zend_Mime_Part mogą być wtedy zmienione ponieważ są one przechowywane w tablicy jako referencje. Jeśli jakieś części są dodane do tablicy lub zmieniona jest ich kolejność, konieczne jest przekazanie tablicy spowrotem do Zend_Mime_Part poprzez wywolanie ->setParts($partsArray).

Funkcja ->isMultiPart() zwróci wartość true jeśli w obiekcie Zend_Mime_Message zarejestrowanych jest więcej części niż jedna. Wtedy gdy obiekt będzie generował wyjściową wiadomość, wygeneruje ją jako wieloczęściową wiadomość MIME.

12.2.4. Obsługa pola rozgraniczającego (boundary)

Zend_Mime_Message zazwyczaj tworzy obiekt Zend_Mime i używa go do tworzenia pola rozgraniczającego. Jeśli chcesz zdefiniować pole samodzielnie lub chcesz zmienić zachowanie obiektu Zend_Mime używanego przez Zend_Mime_Message, możesz utworzyć instancję obiektu Zend_Mime samodzielnie i potem zarejestrować ją do obiekcie Zend_Mime_Message. Zazwyczaj jednak nie jest to potrzebne. ->setMime(Zend_Mime $mime) ustawia specjalną instancję Zend_Mime która ma być używana przez obiekt Zend_Mime_Message

->getMime() zwraca instancję Zend_Mime która będzie użyta do renderowania wiadomości przez wywołanie metody generateMessage().

->generateMessage() renderuje wiadomość Zend_Mime_Message do postaci łańcuchu znaków.

12.2.5. Tworzenie obiektu Zend_Mime_Message z łańcucha znaków. (eksperymentalne)

Wiadomość zgodna z MIME zapisana w postaci łańcucha znaków może być użyta do zrekonstruowania obiektu Zend_Mime_Message. Zend_Mime_Message ma statyczną fabrykę przetwarzającą podany łańcuch znaków i następnie zwracającą obiekt Zend_Mime_Message.

Zend_Mime_Message::createFromMessage($str, $boundary) dekoduje podany łańcuch znaków i zwraca obiekt Zend_Mime_Message. Jego poprawność może być następnie sprawdzona przez użycie metody ->getParts()