Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / PHP / Руководство по РНР 3.0 / Справочник функций /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Функции IMAP - Программирование от RIN.RU
Функции IMAP

imap_append
imap_base64
imap_body
imap_check
imap_close
imap_createmailbox
imap_delete
imap_deletemailbox
imap_expunge
imap_fetchbody
imap_fetchstructure
imap_header
imap_headers
imap_listmailbox
imap_listsubscribed
imap_mail_copy
imap_mail_move
imap_num_msg
imap_num_recent
imap_open
imap_ping
imap_renamemailbox
imap_reopen
imap_subscribe
imap_undelete
imap_unsubscribe
imap_qprint
imap_8bit
imap_binary
imap_scanmailbox
imap_mailboxmsginfo
imap_rfc822_write_address
imap_rfc822_parse_adrlist
imap_setflag_full
imap_clearflag_full
imap_sort
imap_fetchheader
imap_uid



Для того, чтобы эти функции заработали вц должны скомпилировать PHP с флагом --with-imap. Этот флаг требут, чтобы была установлена библиотека c-client. Последнюю версию можно получить по адресу ftp://ftp.cac.washington.edu/imap/. Затем скопируйте c-client/c-client.a в /usr/local/lib или какую либо другую директорию, прописанную в пути, затем скопируйте c-client/rfc822.h, mail.h и linkage.h в /usr/local/include или другую директорию с include-файлами.




imap_append


imap_append -- Добавляет текстовое сообщение в указанный почтовый ящик


Описание int imap_append(int imap_stream, string mbox, string message, stringflags);


Возвращает true в случае успеха или false иначе.


imap_append() добавляет текстовое сообщение в указанный почтовый ящик mbox. Если указаны необязательные флаги, также записывает в почтовый ящик и флаги.


При общении с сервером Cyrus IMAP нужно использовать в качестве ограничителей строки "\r\n" вместо "\n", иначе действие не выполнится.



imap_base64


imap_base64 -- Декодирует текст, закодированный с помощью BASE64


Описание string imap_base64(string text);


Функция imap_base64() декодирует текст в формате BASE-64. Декодированное сообщение возвращается как строка.



imap_body


imap_body -- Читает тело сообщения


Описание string imap_body(int imap_stream, int msg_number, int flags);


Функция imap_body() возвращает тело сообщения, имеющего номер п/п msg_number в текущем почтовом ящике. Необязательные флаги это битовые маски из


  • FT_UID - Номер сообщения msgno является UID"ом сообщения

  • FT_PEEK - Не устанавливать флаг \Seen если он еще не установлен.

  • FT_INTERNAL - Возвращаемая строка записана во внутреннем формате и не может быть приведена к канонической форме с CRLF.




imap_check


imap_check -- Проверяет текущий почтовый ящик


Описание array imap_check(int imap_stream);


Возвращает информацию о текущем почтовом ящике. В случае неуспеха возвращает FALSE.


Функция imap_check() проверяет статус текущего почтового ящика на сервере и возвращает информацию в объекте со следующими свойствами.


  • Date : дата сообщения

  • Driver : драйвер

  • Mailbox : название почтового ящика

  • Nmsgs : количество сообщений

  • Recent : количество недавно пришедших сообщений




imap_close


imap_close -- Закрывает поток IMAP


Описание int imap_close(int imap_stream, int flags);


Закрывает поток imap. Необязательный флаг CL_EXPUNGE заставляет стереть помеченные на удаление сообщения при закрытии.



imap_createmailbox


imap_createmailbox -- Создает новый почтовый ящик.


Описание int imap_createmailbox(int imap_stream, string mbox);


imap_createmailbox() создает новый почтовый ящик указанный в mbox. Возвращает true в случае успеха и false при ошибке.



imap_delete


imap_delete -- Помечает сообщение из текущего почтового ящика на удаление


Описание int imap_delete(int imap_stream, int msg_number);


Возвращает true.


Функция imap_delete() помечает сообщение, указанное через msg_number на удаление. Настоящее удаление сообщений осуществляется функцией imap_expunge().



imap_deletemailbox


imap_deletemailbox -- Удаляет почтовый ящик


Описание int imap_deletemailbox(int imap_stream, string mbox);


imap_deletemailbox() удаляет указанный почтовый ящик. Возвращает true в случае успеха и false иначе.



imap_expunge


imap_expunge -- Удаляет все сообщения, помеченные на удаление


Описание int imap_expunge(int imap_stream);


imap_expunge() удаляет все сообщения помеченные на удаление с помощью imap_delete(). Возвращает true.



imap_fetchbody


imap_fetchbody -- Извлекает простую секцию тела сообщения


Описание string imap_fetchbody(int imap_stream, int msg_number, int part_number, flags flags);


Эта функция заставляет извлечь подробную секцию указанного сообщения как текстовую строку. Секция - это строка целых чисел, разделенных точками, которые указывают на части тела сообщения в списке частей согласно спецификации IMAP4. Части тела не декодируются этой функцией. Необязательным параметром к imap_fetchbody () является битовая маска из


  • FT_UID - msgono является UID"ом

  • FT_PEEK - не устанавливать флаг \Seen если он не установлен

  • FT_UID - возвращаемая строка записана во внутреннем формате, которое не может быть канонизированна с помощью CRLF




imap_fetchstructure


imap_fetchstructure -- Читает структуру простого сообщения


Описание array imap_fetchstructure(int imap_stream, int msg_number);


Эта функция заставляет извлечь всю информацию о структуре сообщения с номером msg_number. Возвращаемая величина является объектом со следующими элементами.


  • type - тип

  • encoding - кодировка

  • ifsubtype - подтип интерфейса

  • subtype - подтип

  • ifdescription - описание интерфейса

  • description - описание

  • ifid - идентификатор интерфейса

  • id - идентификатор

  • lines - строки

  • bytes - байты

  • ifparameters - параметры интерфейса




Также функция возвращает массив объектов под названием parameters[]. Этот объект имеет следующие свойства.


attributevalue
атрибутвеличина



В случае сообщения из нескольих частей, функция также возвращает массив объектов всех свойств под название parts[].



imap_header


imap_header -- Читает заголовок сообщения


Описание object imap_header(int imap_stream, int msg_number, int fromlength, int subjectlength, int defaulthost);


Эта функция возвращает объект различных элементов заголовка


remail,date,Date,subject,Subject,in_reply_to,message_id,newsgroups,
followup_to,references


toaddress (полная строка To: строка длиной до 1024 символов)


to[] (возвращает массив объектов из строки To, содержит:)
personal
adl
mailbox
host


fromaddress (полная строка From: строка длиной до 1024 символов)


from[] (возвращает массив объектов из строки From, содержит:)
personal
adl
mailbox
host


ccaddress (полная строка Cc: строка длиной до 1024 символов)
cc[] (возвращает массив объектов из строки Cc, содержит:)
personal
adl
mailbox
host


bccaddress (полная строка Bcc: строка длиной до 1024 символов)
bcc[] (возвращает массив объектов из строки Bcc, содержит:)
personal
adl
mailbox
host


reply_toaddress (полная строка Reply_to: строка длиной до 1024 символов)
reply_to[] (возвращает массив объектов из строки Reply_to, содержит:)
personal
adl
mailbox
host


senderaddress (полная строка Sender: строка длиной до 1024 символов)
sender[] (возвращает массив объектов из строки Sender, содержит:)
personal
adl
mailbox
host


return_path (полная строка Return-path: строка длиной до 1024 символов)
return_path[] (возвращает массив объектов из строки Return_path, содержит:)
personal
adl
mailbox
host


udate ( дата сообщения в формате времени unix)


fetchfrom (строка From, отформатированная до fromlength символов)
fetchsubject (строка Subject, отформатированная до subjectlength символов)



imap_headers


imap_headers -- Возвращает заголовки всех сообщений в почтовом ящике


Описание array imap_headers(int imap_stream);


Возвращает строковый массив из информации по заголокам. Один элемент массива на сообщение.



imap_listmailbox


imap_listmailbox -- Читает список почтовых ящиков


Описание array imap_listmailbox(int imap_stream, string ref, string pat);


Возвращает массив, содержащий названия почтовых ящиков.



imap_listsubscribed


imap_listsubscribed -- Перечисляет все подписанные ящики


Описание array imap_listsubscribed(int imap_stream, string ref, string pattern);


Возвращает массив всех почтовых ящиков на которые Вы подписаны. Аргументы ref и pattern указывают начальное месторасположение откуда начинать поиск и шаблон, которому должны удовлетворять названия почтовых ящиков.



imap_mail_copy


imap_mail_copy -- Копирует указанные сообщения в почтовый ящик


Описание int imap_mail_copy(int imap_stream, string msglist, string mbox, int flags);


Возвращает true в случае успеха и false иначе. Копирует почтовые сообщения указанные с помощью msglist в почтовый ящик mbox. msglist - это диапазон, а не просто номера сообщений.


флаги - это битовые маски из


  • CP_UID - номера в последовательности содержат UID"ы

  • CP_MOVE - после копирования удалить сообщения из текущего почтового ящика




imap_mail_move


imap_mail_move -- Переносит указанные сообщения в почтовый ящик


Описание int imap_mail_move(int imap_stream, string msglist, string mbox);


Переносит почтовые сообщения указанные с помощью msglist в почтовый ящик mbox. msglist - это диапазон, а не просто номера сообщений. Возвращает true в случае успеха и false иначе.



imap_num_msg


imap_num_msg -- Выдает количество сообщений в текущем почтовом ящике


Описание int imap_num_msg(void);


Возвращает количество сообщений в текущем почтовом ящике.



imap_num_recent


imap_num_recent -- Возвращает количество недавно пришедших сообщений в текущем почтовом ящике


Описание int imap_num_recent(int imap_stream);


Возвращает количество недавно пришедших сообщений в текущем почтовом ящике.



imap_open


imap_open -- Открывает поток IMAP в почтовый ящик


Описание int imap_open(string mailbox, string username, string password, int flags);


В случае успеха возвращает поток IMAP или false иначе. Эта функция может быть использована для открытия потоков к POP3 и NNTP серверам. Для того, чтобы присоединиться к серверу IMAP на 143-й порт на локальной машине сделайте следующее:


  • $mbox = imap_open("{localhost:143}INBOX","user_id","password");
    Для того, чтобы подсоединиться к POP3-серверу на 110-й порт на локальном сервере используйте:

  • $mbox = imap_open("{localhost/pop3:110}INBOX","user_id","password");
    Для того, чтобы подсоединиться к NNTP-серверу на 119-й порт на локальном сервере используйте:

  • $nntp = imap_open("{localhost/nntp:119}comp.test","","");
    Для того, чтобы подсоединиться к удаленному серверу замените "localhost" на имя или IP-адрес сервера к которому Вы хотите подсоединиться.


Опции - битовая маска из


  • OP_READONLY - Открыть почтовый ящик в режим "только чтение"

  • OP_ANONYMOUS - Не использовать или не обновлять .newsrc при использовании новостей

  • OP_HALFOPEN - Для IMAP и NNTP устанавливает соединение, но не открывает почтовый ящик

  • CL_EXPUNGE - Автоматически очищать почтовый ящик при закрытии




imap_ping


imap_ping -- Проверяет поток IMAP на работоспособность


Описание int imap_ping(int imap_stream);


Возвращает true если поток еще работоспособен и false иначе. Функция imap_ping() проверяет поток на работоспособность. Он может также проверять новую почту; это предпочтительный метод для периодической проверки новой почты и "живучести" удаленных серверов.



imap_renamemailbox


imap_renamemailbox -- Переименовывает старый почтовый ящик в новый


Описание int imap_renamemailbox(int imap_stream, string old_mbox, string new_mbox);


Эта функция переименовывает старый почтовый ящик в новый. Возвращает true в случае успеха и false иначе.



imap_reopen


imap_reopen -- Заново открывает поток IMAP на новый почтовый ящик


Описание int imap_reopen(string imap_stream, string mailbox, string [flags]);


Возвращает true в случае успеха и false иначе. Эта функция заново открывает указанный поток на новый ящик.


Опции - битовая маска из


  • OP_READONLY - Открыть почтовый ящик в режиме только чтение

  • OP_ANONYMOUS - Не использовать или не обновлять .newsrc при работе с новостями

  • OP_HALFOPEN - Для IMAP и NNTP устанавливает связь но не открывает почтовый ящик

  • CL_EXPUNGE - Очищает почтовый ящик при закрытии




imap_subscribe


imap_subscribe -- Подписывает на почтовый ящик


Описание int imap_subscribe(int imap_stream, string mbox);


Подписывает на новый почтовый ящик. Возвращает true в случае успеха и false иначе.



imap_undelete


imap_undelete -- Снимает отметку с сообщения помеченного на удаление


Описание int imap_undelete(int imap_stream, int msg_number);
Эта функция cнимает отметку с сообщения помеченного на удаление функцией imap_delete(). Возвращает true в случае успеха и false иначе.



imap_unsubscribe


imap_unsubscribe -- Снимает подписку с почтового ящика


Описание int imap_unsubscribe(int imap_stream, string mbox);


Снимает подписку с почтового ящика. Возвращает true в случае успеха и false иначе.



imap_qprint


imap_qprint -- Конвертирует строку формата quoted-printable в 8-битовую строку


Описание string imap_qprint(string string);


Конвертирует строку формата quoted-printable в 8-битовую строку. Возвращает 8-битовую (бинарную) строку



imap_8bit


imap_8bit -- Конвертирует 8-битовую строку в формат quoted-printable


Описание string imap_8bit(string string);


Конвертирует 8-битовую строку в формат quoted-printable. Возвращает строку в формате quoted-printable.



imap_binary


imap_binary -- Конвертирует 8-битную строку в формат base64


Описание string imap_binary(string string);


Конвертирует 8-битную строку в формат base64. Возвращает строку в формате base64.



imap_scanmailbox


imap_scanmailbox -- Читает список почтовых ящиков, проводит поиск в названиях ящиков


Описание array imap_scanmailbox(int imap_stream, string string);


Возвращает массив, содержащий имена почтовых ящиков, которые имеют строку string в названии.



imap_mailboxmsginfo


imap_mailboxmsginfo -- Получает информацию о текущем почтовом ящике


Описание array imap_mailboxmsginfo(int imap_stream);


Возвращает информацию о текущем почтовом ящике. FALSE в случае неудачи. Функция imap_mailboxmsginfo() проверяет статус текущего почтового ящика на сервере и возвращает информацию в объекте со следующими свойствами:


  • Date : дата сообщения

  • Driver : драйвер

  • Mailbox : название почтового ящика

  • Nmsgs : количество сообщений

  • Recent : количество недавно пришедших сообщений

  • Unread : количество непрочитанных сообщений

  • Size : размер почтового ящика




imap_rfc822_write_address


imap_rfc822_write_address -- Возвращает правильно отформатированный email адрес


Описание string imap_rfc822_write_address(string mailbox, string host, string personal);


Возвращает правильно отформатированный email адрес по данному почтовому ящику, хосту и персональной информации.



imap_rfc822_parse_adrlist


imap_rfc822_parse_adrlist -- Проводит разбор адресной строки


Описание string imap_rfc822_parse_adrlist(string address, string default_host);


Эта функция разбирает адресную строку и для каждого адреса возвращает массив объектов. Есть 4 типа объектов:


  1. mailbox - название почтового ящика (имя пользователя)

  2. host - название хоста

  3. personal - личное имя

  4. adl - путь к домену-источнику




imap_setflag_full


imap_setflag_full -- Устанавливает флаги на сообщения


Описание string imap_setflag_full(int stream, string sequence, string flag, string options);


Эта функция застваляет добавить указанный флаг к набору флагов сообщения в указанной последовательности.


options - это битовая маска из ST_UID Аргументы последовательности содержат UIDы вместо номеров



imap_clearflag_full


imap_clearflag_full -- Очищает флаги сообщения


Описание string imap_clearflag_full(int stream, string sequence, string flag, string options);


Эта функция заставляет удалить флаги из набора флагов сообщения в указанной последовательности.


options - это битовая маска из ST_UID Аргументы последовательности содержат UIDы вместо номеров



imap_sort


imap_sort -- Сортирует сообщения в текущем почтовом ящике


Описание string imap_sort(int stream, int criteria, int reverse, int options);


Возвращает массив номеров сообщений рассортированных по данному параметру. Rev должен быть равен 1 если нужна сортировка в обратном порядке. Критерии сортировки (должен быть указан только один):


SORTDATE
SORTARRIVAL
SORTFROM
SORTSUBJECT
SORTTO
SORTCC
SORTSIZE

по дате сообщения
по дате поступления
по полю From
по теме сообщения
по полю To
по полю cc
по размеру




опции - битовая маска из


  • SE_UID Возвратить UIDы вместо номеров последовательности

  • SE_NOPREFETCH Не извелекать заранее найденные сообщения




imap_fetchheader


imap_fetchheader -- Возвращает заголовок сообщения


Описание stringimap_fetchheader(int imap_stream, int msgno, int flags);


Эта функция заставляет извлечь полный, неотфильтрованный заголовок указанного сообщения в формате RFC 822 как текстовую строку.


Опиции:


  • FT_UID msgno является UID"ом

  • FT_INTERNAL Возвращаемая строка записана во внутреннем формате без каких-либо попыток канонизировать ее с помощью CRLF

  • FT_PREFETCHTEXT RFC822. Текст должен быть предварительно разобран. Это поможет избежать эстренных задержек если требуется извлечь полный текст сообщения (например, в операции "сохранить в локальном файле")




imap_uid


imap_uid -- Эта функция возвращает UID по данному номеру сообщения в последовательности


Описание string imap_uid(string mailbox, int msgno);


Эта функция возвращает UID по данному номеру сообщения в последовательности.



 8  Комментарии к статье  8  Обсудить в форуме  8  Обсудить в чате

8  В тему

Adabas D функции

Специфичные функции Apache

Функции обработки массивов

Математические BC (произвольной точности) функции

Календарные Функции

Функции Даты/Времени

dBase функции

Функции dbm

Функции для работы с каталогами

Функции запуска программ

Функции работы с filePro

Функции файловой системы

Функции, связанные с HTTP

Функции работы с Hyperwave

Функции работы с изображениями

PHP опции и информация

Функции работы с Informix

LDAP Функции

Почтовые функции

Математические функции

Дополнительные функции

Функции mSQL

Функции MySQL

Функции для работы с Sybase

Сетевые функции

Функции ODBC

Функции Oracle

Функции PDF

Функции PostgreSQL

Функции регулярных выражений

Функции семафоров и разделяемой памяти

Solid (надежные) функции

Функции SNMP

Строковые функции

Функции URL

Функции переменных

Функции Vmailmgr

Функции Gz-файлов

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь