CheckFile
Описание и параметры
string CFile::CheckFile( array file, int max_size = 0, string mime_types = false, string Ext = false, bool ForceMD5=false, bool SkipExt=false )
Метод проверяет размер, расширение и mime тип файла. В случае ошибки метод вернет строку с текстом ошибки. Статический метод.
Параметры
Параметр | Описание | С версии |
---|---|---|
file | Массив с данными файла формата:Array( "name" => "название файла", "size" => "размер", "tmp_name" => "временный путь к файлу на сервере", "type" => "тип загружаемого файла", "del" => "флаг - удалить ли существующий файл из базы данных (Y|N)", "MODULE_ID" => "название модуля" )Массив такого вида может быть получен, например, объединением массивов $_FILES[имя поля] и Array("del" => ${"имя поля"."_del"}, "MODULE_ID" = "название модуля"). | |
max_size | Максимальный размер файла (байт). Необязательный. По умолчанию - "0" - без ограничений. | |
mime_types | Разрешенный mime тип файла (например, "image/").
Проверка осуществляется по данным полученным от посетителя, поэтому для более безопасной проверки используйте extensions.
Необязательный. По умолчанию - "false" - без ограничений. | |
Ext | Перечисленные через запятую разрешенные расширения файла. Необязательный. По умолчанию - "false" - без ограничений. Расширения файла следует указывать без точки, например не .pdf, а pdf. Для сверки допустимых расширений и текущего расширения загруженного файла, текущее расширение получают методом CFile::GetFileExtension, который возвращает расширение без точки. | |
ForceMD5 | Необязательный. По умолчанию - "false". | 12.5.4 |
SkipExt | Необязательный. По умолчанию - "false". | 12.5.4 |
Смотрите также
Примеры использования
<? $arrFile = array_merge( $_FILES["ATTACHED_IMAGE"], array("del" => ${"ATTACHED_IMAGE_del"}, "MODULE_ID" => "forum") ); $res = CFile::CheckFile($arrFile, 200, "image/", CFile::GetImageExtensions()); if (strlen($res)>0) $strError .= $res."<br>"; ?>
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.