Поля

name. Имя файла
$файл.name   

Поле содержит имя файла. Объект класса
file имеет поле name, если пользователь закачал файл через поле формы. Также в конструкторе file::load может быть указано альтернативное имя файла.

size. Размер файла
$файл.size   

Поле содержит размер файла в байтах.

text. Текст файла
$файл.text

Поле содержит текст файла. Использование этого поля позволяет выводить на странице содержимое текстовых файлов или результатов работы
file::cgi и file::exec.
Примечание: автоматическая нормализация переводов строк делается для текстовых файлов (mode=text), но не делается для бинарных (mode=binary). Чтобы сделать нормализацию переводов строк для бинарных файлов, например тех, которые были получены из form, необходимо воспользоваться следующей конструкцией:
$f[^file::create[$form:file;$.mode[text]]
$f.text


Дополнительная информация о файле
$файл.cdate - дата создания;
$файл.mdate - дата изменения;
$файл.adate - дата последнего обращения к файлу.

Поля доступны если объект получен конструкторами file::stat или file::load путём загрузки локального файла   [3.3.0]

stderr. Текст ошибки выполнения программы
$файл.stderr

При выполнении
file::cgi и file::exec сюда попадает текст из стандартного потока ошибок программы.

status. Статус получения файла
$файл.status

При выполнении
file::cgi и file::exec в поле status попадает статус выполнения программы (0=успех).
При выполнении
file::load с HTTP сервера, сюда попадает статус выполнения HTTP запроса (200=успех).

mode. Формат файла   [3.4.0]
$файл.mode

Может иметь значение text или binary.

content-type. MIME-тип файла
$файл.content-type

Поле может содержать MIME-тип файла. При выполнении CGI-скрипта (см.
file::cgi) MIME-тип может задаваться CGI-скриптом, полем заголовка ответа «content-type». При загрузке (см. file::load) или получении информации о файле (см. file::stat) MIME-тип определяется по таблице $MAIN:MIME-TYPES (см. «Конфигурационный метод»), если в таблице расширение имени файла найдено не будет, будет использован тип «application/octet-stream».

Поля HTTP-ответа
Если файл был загружен с HTTP-сервера, поля заголовков HTTP-ответа доступны, как поля объекта класса file:

$файл.ПОЛЕ_HTTP_ОТВЕТА (ЗАГЛАВНЫМИ БУКВАМИ)

Например:
$файл.SERVER

Если один заголовок повторяется в ответе несколько раз, все его значения доступны в поле
tables:

$.tables[
   $.HTTP-ЗАГОЛОВОК[
таблица значений, единственный столбец value]
]


Пример:

$f[^file::load[binary;http://www.parser.ru]]
^f.tables.foreach[key;value]{
    $key=^value.menu{$value.value}[
|]<br />
}



In order to add comments you must register.
Copyright © 1997–2021 Art. Lebedev Studio | http://www.artlebedev.ru Дата обновления: 08.10.2012