|
(PHP 3, PHP 4)
imap_open - открывает IMAP-поток в mailbox. Описаниеint imap_open (string mailbox, string username, string password [, int flags])
Возвращает IMAP-поток при успехе и FALSE при ошибке. Эта функция может использоваться также для открытия потоков к POP3
и NNTP серверам, но некоторые функции и их возможности доступны только на IMAP-серверах.
Имя mailbox'а состоит из серверной части и пути mailbox'а на этом сервере. Специальное имя INBOX предназначено для персонального mailbox'а текущего
пользователя. Серверная часть, заключённая в '{' и '}', состоит из имени сервера или ip-адреса, необязательного номера порта
(с префиксом ':') и необязательной спецификации протокола (с префиксом '/'). Серверная часть является обязательной во всех параметрах mailbox'а. Имена
почтовых ящиков, содержащие интернациональные символы за пределами печатаемых ASCII, должны быть кодированы с помощью
imap_utf7_encode(). Опции это битовая маска с одним или более значений:
OP_READONLY - открывть mailbox только для чтения
OP_ANONYMOUS - не использовать или не обновлять .newsrc на новый (только в NNTP)
OP_HALFOPEN - для имён IMAP и NNTP, открывает соединение, но не открывает mailbox
CL_EXPUNGE - очищает mailbox автоматически после его закрытия
Для соединения с IMAP-сервером, запущенным на порту 143 на локальной машине, сделайте так:
$mbox = imap_open ("{localhost:143}INBOX", "user_id", "password"); |
Для соединения с POP3-сервером на порту 110 а локальном сервере используйте:
$mbox = imap_open ("{localhost:110/pop3}INBOX", "user_id", "password"); |
Для соединения с SSL IMAP или POP3-сервером добавьте /ssl после спецификации протокола:
$mbox = imap_open ("{localhost:993/imap/ssl}INBOX", "user_id", "password"); |
Для соединения с SSL IMAP или POP3-сервером с self-signed сертификатом добавьте
/ssl/novalidate-cert после спецификации протокола:
$mbox = imap_open ("{localhost:995/pop3/ssl/novalidate-cert}", "user_id", "password"); |
Для соединения с NNTP-сервером на порту 119 на локальном сервере используйте:
$nntp = imap_open ("{localhost:119/nntp}comp.test", "", ""); |
Для соединения с удалённым сервером замените "localhost" на имя или IP-адрес сервера, с которым вы хотите соединиться.
Пример 1. imap_open()
$mbox = imap_open ("{your.imap.host:143}", "username", "password");
echo "<p><h1>Mailboxes</h1>\n";
$folders = imap_listmailbox ($mbox, "{your.imap.host:143}", "*");
if ($folders == false) {
echo "Call failed<br>\n";
} else {
while (list ($key, $val) = each ($folders)) {
echo $val."<br>\n";
}
}
echo "<p><h1>Headers in INBOX</h1>\n";
$headers = imap_headers ($mbox);
if ($headers == false) {
echo "Call failed<br>\n";
} else {
while (list ($key,$val) = each ($headers)) {
echo $val."<br>\n";
}
}
imap_close($mbox); |
|
| |