PHP Imap: многопоточные почтовые разговоры

Я новичок в функциях IMAP в PHP, и мне поручили создать сайт для продажи билетов.
Я получил основную часть извлечения электронной почты, но я наткнулся на препятствие "Просмотр цепочки сообщений".

Мне нужно иметь возможность представлять электронные письма (как отправленные, так и полученные) в виде многопотоковой беседы, очень похожей на функцию SMS на смартфоне.

Большинство алгоритмов, которые я нашел, имели дело только с входящими сообщениями с резьбой, исключая отправленные элементы. Было бы хорошо, если бы вы могли помочь мне с этим.

Моим конечным целевым результатом будет изначально массив писем "UNREAD", сгруппированных по теме, каждая из которых содержит список обмененных писем, принадлежащих этой теме.

Что-то вроде этого:

array
(
  [0] => array
         (
           [0] => array
                  (
                    'date' => 'some date',
                    'sender' => 'some sender',
                    'message' => 'yes i am',
                    'subject' => 'Re: Fubar',
                    'status' => 'unread'
                  ),
           [1] => array
                  (
                    'date' => 'some date',
                    'sender' => 'some sender',
                    'message' => 'are you from america?',
                    'subject' => 'Re: Fubar',
                    'status' => 'read'
           [2] => array
                  (
                    'date' => 'some date',
                    'sender' => 'some sender',
                    'message' => 'hello',
                    'subject' => 'Re: Fubar',
                    'status' => 'read'
           [3] => array
                  (
                    'date' => 'some date',
                    'sender' => 'some sender',
                    'message' => 'hi',
                    'subject' => 'Fubar',
                    'status' => 'read'
         ),
  [1] => array
         (
           [0] => array
                  (
                    'date' => 'some date',
                    'sender' => 'some sender',
                    'message' => 'hell yeah!',
                    'subject' => 'Re: Skills',
                    'status' => 'unread'
                  ),
           [1] => array
                  (
                    'date' => 'some date',
                    'sender' => 'some sender',
                    'message' => 'are you good enough?',
                    'subject' => 'Skills',
                    'status' => 'read'
)

1 ответ

Возможно imap_thread() это то, что вы после?

Вы должны были бы просмотреть результаты и построить массив примеров, используя imap_headerinfo(), Пока почтовый ящик, к которому вы обращаетесь, остается аккуратным, он должен работать довольно быстро.

Другие вопросы по тегам