ftp_size
Определяет размер файла.
Синтаксис :
int ftp_size(int ftp_stream, string remote_file)
Функция ftp_size() возвращает размер файла, заданного в параметре remote_file, в байтах или -1 при ошибке.
Не все серверы поддерживают эту возможность.
ftp_mdtm
Возвращает время последней модификации файла.
Синтаксис :
int ftp_mdtm(int ftp_stream, string remote_file)
Функция ftp_mdtm() возвращает время, последней модификации, представленное в формате Unix, или -1 при ошибке.
Данная функция не работает с каталогами.
ftp_rename
Производит переименование файла.
Синтаксис :
int ftp_rename(int ftp_stream, string from, string to)
Функцияftp_rename()переименовываетфайлfromвto.
Функция возвращает true или false в случае ошибки.
ftp_delete
Производит удаление файла с сервера.
Синтаксис :
int ftp_delete(int ftp_stream, string path)
Функция ftp_delete() удаляет файл, имя которого задано в параметре path.
Функция возвращает true или false в случае ошибки.
ftp_site
Производит выполнение команды SITE на сервере.
Синтаксис :
int ftp_site(int ftp_stream, string cmd)
Функция ftp_site() посылает серверу команду cmd.
Т.к. команды SITE не стандартизированы, они могут различаться. Обычно они полезны для изменения прав доступа к файлам и групповой принадлежности.
Функция возвращает true или false в случае ошибки.
Для того, чтобы эти функции заработали вы должны скомпилировать 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. Лежащая в основе библиотека C-клиента также поддерживает NNTP, POP3 и методы доступа к локальным почтовым ящикам.
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
Декодирует текст, закодированный с помощью BASE64.
Синтаксис :
string imap_base64(string text);
Функция imap_base64() декодирует текст в формате BASE-64. Декодированное сообщение возвращается как строка.
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
Проверяет текущий почтовый ящик.
Синтаксис :
array imap_check(int imap_stream);
Возвращает информацию о текущем почтовом ящике. В случае неуспеха возвращает FALSE.
Функция imap_check() проверяет статус текущего почтового ящика на сервере и возвращает информацию в объекте со следующими свойствами :
Date : дата сообщения
Driver : драйвер
Mailbox : название почтового ящика
Nmsgs : количество сообщений
Recent : количество недавно пришедших сообщений
imap_close
Закрывает поток IMAP.
Синтаксис :
int imap_close(int imap_stream, int flags);
Закрываетпоток imap. Необязательный флаг CL_EXPUNGE заставляет стереть помеченные на удаление сообщенияпри закрытии.
imap_createmailbox
Создает новый почтовый ящик.
Синтаксис :
int imap_createmailbox(int imap_stream, string mbox);
imap_createmailbox() создает новый почтовый ящик указанный в mbox.Возвращает true в случае успеха и false при ошибке.
imap_delete
Помечает сообщение из текущего почтового ящика на удаление.
Синтаксис :
int imap_delete(int imap_stream, int msg_number);
Возвращает true.
Возвращает true.Функция imap_delete() помечает сообщение, указанное через msg_number на удаление. Настоящее удаление сообщенийосуществляется функцией imap_expunge().
imap_deletemailbox
Удаляет почтовый ящик.
Синтаксис :
int imap_deletemailbox(int imap_stream, string mbox);
Возвращает true в случае успеха и false иначе.
imap_expunge
Удаляет все сообщения, помеченные на удаление.
Синтаксис :
int imap_expunge(int imap_stream);
imap_expunge() удаляет все сообщения помеченные на удаление с помощью imap_delete().
Возвращает true.
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
Читает структуру простого сообщения.
Синтаксис :
array imap_fetchstructure(int imap_stream, int msg_number);
array imap_fetchstructure(int imap_stream, int msg_number);Эта функция заставляет извлечь всю информацию о структуре сообщения с номером msg_number. Возвращаемая величинаявляется объектом со следующими элементами :
type, encoding, ifsubtype, subtype, ifdescription, description, ifid, id, lines, bytes, ifparameters тип, кодировка, подтип интерфейса, подтип, описание интерфейса, описание, идентификатор интерфейса, строки, байты, параметры интерфейса
Также функция возвращает массив объектов под названием parameters[]. Этот объект имеет следующиесвойства :
attribute, value
атрибут, величина
В случае сообщения из нескольих частей, функция также возвращает массив объектов всех свойств под название parts[].
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
Возвращает заголовки всех сообщений в почтовом ящике.
Синтаксис :
array imap_headers(int imap_stream);
Возвращает строковый массив из информации по заголокам. Один элемент массива на сообщение.
imap_listmailbox
Читает список почтовых ящиков.
Синтаксис :
array imap_listmailbox(int imap_stream, string ref, string pat);
Возвращает массив, содержащий названия почтовых ящиков.
imap_listsubscribed
Перечисляет все подписанные ящики.
Синтаксис :
array imap_listsubscribed(int imap_stream, string ref, string pattern);
Возвращает массив всех почтовых ящиков на которые Вы подписаны. Аргументы ref и pattern указывают начальноеместорасположение откуда начинать поиск и шаблон, которому должны удовлетворять названия почтовых ящиков.
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
Переносит указанные сообщения в почтовый ящик.
Синтаксис :
int imap_mail_move(int imap_stream, string msglist, string mbox);
Переносит почтовые сообщения указанные с помощью msglist в почтовый ящик mbox. msglist - это диапазон, а не простономера сообщений.
Возвращает true в случае успеха и false иначе.
imap_num_msg
Выдает количество сообщений в текущем почтовом ящике.
Синтаксис :
int imap_num_msg(void);
Возвращает количество сообщений в текущем почтовом ящике.
imap_num_recent
Возвращает количество недавно пришедших сообщений в текущем почтовом ящике.
Синтаксис :
int imap_num_recent(int imap_stream);
imap_open
Подключение к серверу (открытие почтового ящика).
Синтаксис :
int imap_open(string mailbox, string username, string password [, int flags]);
Функция imap_open() возвращает дескриптор почтового ящика IMAP (дескриптор подключения к серверу IMAP) или false при ошибке.
Эта функция может быть использована для открытия потоков к POP3 и NNTP серверам, но в этом случае некоторые функции будут недоступны.
Аргумент mailbox - задает имя сервера и путь к почтовому ящику. Имя сервера следует заключать в фигурные скобки "{" и "}", внутри которых должно содержаться: имя сервера (или его IP-адрес), возможно указание протокола (который начинается со слеша "/") и номера порта Для того, чтобы присоединиться к серверу 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 - Автоматически очищать почтовый ящик при закрытии