Хорошо, не повезло с почтовым клиентом ZETA, поэтому теперь я попытался установить библиотеку клиентов Horde IMAP. Мне удалось войти в мою учетную запись и выполнить поиск по электронной почте, а также получить результаты, но я не знаю, как получить данные электронной почты, и документация не очень помогает: |HORDE Imap PHP client - как получать сообщения
Я предполагаю, что мне нужно будет использовать метод Horde_Imap_Client_Base::fetch()
для получения некоторых сообщений электронной почты, которые принимают два параметра, имя почтового ящика и объект Horde_Imap_Client_Fetch_Query
, но я не знаю, как получить этот второй объект: |
Должен ли этот объект быть возвращен одной из базовых функций или я должен построить этот объект с параметрами запроса, которые я хочу? Если второй, как мне перестроить мой поисковый запрос в объекте запроса выборки из приведенного ниже примера?
Вот как я ищу свою почту для письма от конкретного контакта на определенный день:
$client = new Horde_Imap_Client_Socket(array(
'username' => '[email protected]',
'password' => 'xxxxxxxxxx',
'hostspec' => 'my.mail.server',
'port' => '143',
'debug' => '/tmp/foo',
));
$query = new Horde_Imap_Client_Fetch_Query();
$query->dateSearch(new Date(), Horde_Imap_Client_Search_Query::DATE_ON);
$query->headerText("from","[email protected]");
$results = $client->search('INBOX', $query);
The Horde_Imap_Client_Base::search()
возвращает массив, который содержит результаты поиска (сообщение корочки поиска писем) , и некоторые дополнительные данные.