Учебник РНР
Назад Вперёд

imap_fetchstructure

(PHP 3, PHP 4)

imap_fetchstructure - читает структуру определённого сообщения.

Описание

object imap_fetchstructure (int imap_stream, int msg_number [, int flags])

Эта функция извлекает всю структурную информацию данного сообщения. Необязательный параметр flags имеет только одну опцию, FT_UID, которая говорит функции - рассматривать аргумент msg_number как UID. Возвращаемый объект содержит оболочку, внутренние данные, размер, флаги и структуру тела вместе с похожим объектом для каждого mime-присоединения. Структура возвращаемых объектов такова:

Таблица 1. Возвращаемые объекты imap_fetchstructure()
typeпервичный тип тела/body
encodingкодировка трансфера тела
ifsubtypeTRUE, если имеется строка subtype
subtypeMIME-подтип
ifdescriptionTRUE, если если имеется строка description
descriptionстрока описания содержимого
ifidTRUE, если имеется строка id
idстрока идентификации
linesколичество строк
bytesколичество байтов
ifdispositionTRUE, если имеется строка disposition
dispositionстрока расположения
ifdparametersTRUE, если существует массив dparameters
dparametersмассив объектов, где каждый объект имеет свойства "attribute" и "value", соответствующие параметрам Content-disposition MIME-header'а
ifparametersTRUE, если массив parameters существует
parametersмассив объектов, где каждый объект имеет свойства "attribute" и "value"
partsмассив объектов, идентичный по структуре объекту верхнего уровня/top-level, каждый из которых соответствует MIME-части body.

Таблица 2. Первичный тип тела
0text
1multipart
2message
3application
4audio
5image
6video
7other

Таблица 3. Кодировки трансфера
07BIT
18BIT
2BINARY
3BASE64
4QUOTED-PRINTABLE
5OTHER

См. также imap_fetchbody().


НазадОглавление Вперёд
imap_fetchheaderВверхimap_get_quota

Загрузка методом POST

<?php // В PHP ранее 4.1.0 должна использоваться $HTTP_POST_FILES вместо $_FILES. if (is_uploaded_file($_FILES['userfile']['tmp_name'])) { copy($_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file"); } else { echo "Possible file upload attack. Filename: " . $_FILES['userfile']['name']; } /* ...или... */ move_uploaded_file($_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file"); ?>

PHP-скрипт, который получает загружаемый файл, должен реализовывать логику, необходимую для определения того, что нужно сделать с загруженным файлом. Вы можете, например, использовать переменную $_FILES['userfile']['size'] для исключения файлов, которые слишком малы или велики. Вы можете использовать переменную $_FILES['userfile']['type'] для исключения файлов, которые не отвечают критериям определённого типа. При любой логике вы должны либо удалять, либо перемещать такие файлы из временной директории.

Файл будет удалён из временной директории по окончании запроса, если он (файл) не перемещён или не переименован.