Доступ к IMAP из PHP-скриптов
| |
|
На хостинговых машинах установлен интерпретатор языка PHP
с возможностью доступа из него к IMAP серверу. Данная
возможность реализована с помощью пакета IMAP Toolkit на базе библиотеки c-client,
что позволяет получать полный доступ к почтовым ящикам на IMAP-серверах
: чтение и удаление сообщений, получение справочной и статистической
информации по ящику и отдельным папкам, работа с base64-кодированными
(прикрепленными) файлами в письмах и многое другое.
Немного о практическом применении этой возможности.
Можно, например, организовать собственный web-интерфейс к почтовым
ящикам своих сотрудников, сделав его "легким" и таким, как хочется
именно Вам - убрать ненужные функции, полностью интегрировать этот
интерфейс в структуру своего виртуального сервера и так далее...
В качестве готового продукта можно применять пакет
Horde IMP, который позволяет
с помощью входящих в него php-скриптов и шаблонов создавать любые
интерфейсы к IMAP4 ящикам и обеспечивать поддержку любых языков путем
использования готовых шаблонов или написания своих.
Можно использовать и более низкий уровень - работать
с почтой прямо из PHP-скриптов. Например, чтобы получить информацию о
количестве писем на IMAP-сервере, можно использовать примерно такой php-код:
<?
$mbox = imap_open("{mail.aha.ru:143}INBOX", "login", "password");
$all = imap_num_msg ($mbox);
$new = imap_num_recent($mbox);
print "Всего сообщений : $allНовых сообщений : $new";
imap_close ($mbox);
?>
После выполнения такой скрипт напечатает количество сообщений
и количество новых из них, доступных на сервере mail.aha.ru в ящике
пользователя 'login' с паролем 'password'.
Полный список команд и операторов, с помощью которых можно
совершать манипуляции с IMAP-ящиками, приведен в документации по языку PHP. Новые возможности доступны как в PHP3, так и
в PHP4, и в модульном (mod_php), и в CGI варианте использования этого
интерпретатора.