Spec-Zone.ru › Yii 2.0

Класс yii\validators\FileValidator

Все классы | Свойства | Методы
Наследование yii\validators\FileValidator » yii\validators\Validator » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable
Подклассы yii\validators\ImageValidator
Доступна с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/validators/FileValidator.php

FileValidator проверяет, является ли атрибут допустимым загруженным файлом.

Обратите внимание, что вам необходимо включить fileinfo расширение PHP.

Открытые свойства

Свойство Тип Описание Определено в
$attributeNames массив Имена атрибутов. yii\validators\Validator
$attributes массив|строка Атрибуты, которые должны быть проверены этим валидатором. yii\validators\Validator
$behaviors yii\base\Behavior[] Список поведений, прикрепленных к этому компоненту yii\base\Component
$builtInValidators массив Список встроенных валидаторов (имя => класс или конфигурация) yii\validators\Validator
$checkExtensionByMimeType булево Выполнять проверку типа файла (расширения) с помощью MIME-типа. yii\validators\FileValidator
$enableClientValidation булево Включить проверку на стороне клиента для этого валидатора. yii\validators\Validator
$except массив|строка Сценарии, для которых валидатор не должен применяться. yii\validators\Validator
$extensions массив|строка Список расширений имен файлов, которые разрешены для загрузки. yii\validators\FileValidator
$isEmpty вызов Вызов PHP, который заменяет стандартное реализацию isEmpty(). yii\validators\Validator
$maxFiles целое число Максимальное количество файлов, которые может содержать данный атрибут. yii\validators\FileValidator
$maxSize целое число Максимальное количество байтов, требуемых для загружаемого файла. yii\validators\FileValidator
$message строка Сообщение об ошибке, используемое, когда файл загружен некорректно. yii\validators\FileValidator
$mimeTypes массив|строка Список MIME-типов файлов, которые разрешены для загрузки. yii\validators\FileValidator
$minSize целое число Минимальное количество байтов, требуемых для загружаемого файла. yii\validators\FileValidator
$on массив|строка Сценарии, для которых может применяться валидатор. yii\validators\Validator
$sizeLimit целое число Предел размера загружаемых файлов. yii\validators\FileValidator
$skipOnEmpty булево Пропустить эту проверку, если значение атрибута равно null или пустой строке. yii\validators\Validator
$skipOnError булево Пропустить эту проверку, если атрибут уже имеет ошибку валидации по предыдущим правилам. yii\validators\Validator
$tooBig строка Сообщение об ошибке, используемое, если загружаемый файл слишком большой. yii\validators\FileValidator
$tooMany строка Сообщение об ошибке, если количество одновременных загрузок превышает лимит. yii\validators\FileValidator
$tooSmall строка Сообщение об ошибке, если загружаемый файл слишком маленький. yii\validators\FileValidator
$uploadRequired строка Сообщение об ошибке, если файл не загружен. yii\validators\FileValidator
$when вызов Вызов PHP, возвращаемое значение которого определяет, должен ли применяться этот валидатор. yii\validators\Validator
$whenClient строка Имя JavaScript-функции, возвращаемое значение которой определяет, должен ли применяться этот валидатор на стороне клиента. yii\validators\Validator
$wrongExtension строка Сообщение об ошибке, если у загруженного файла есть расширение, не указанное в $extensions. yii\validators\FileValidator
$wrongMimeType строка Сообщение об ошибке, если у файла есть MIME-тип, не разрешенный свойством $mimeTypes. yii\validators\FileValidator

Открытые методы

Метод Описание Определено в
__call() Вызывает метод с заданным именем, который не является методом класса. yii\base\Component
__clone() Этот метод вызывается после создания объекта путём клонирования существующего. yii\base\Component
__construct() Конструктор. yii\base\Object
__get() Возвращает значение свойства компонента. yii\base\Component
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Component
__set() Устанавливает значение свойства компонента. yii\base\Component
__unset() Устанавливает свойство компонента в значение null. yii\base\Component
addError() Добавляет ошибку об указанном атрибуте к объекту модели. yii\validators\Validator
attachBehavior() Прикрепляет поведение к этому компоненту. yii\base\Component
attachBehaviors() Прикрепляет список поведений к компоненту. yii\base\Component
behaviors() Возвращает список поведений, по которым должен вести себя этот компонент. yii\base\Component
canGetProperty() Возвращает значение, указывающее, можно ли прочитать свойство. yii\base\Component
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Component
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
clientValidateAttribute() Возвращает JavaScript, необходимый для выполнения проверки на стороне клиента. yii\validators\FileValidator
createValidator() Создаёт объект валидатора. yii\validators\Validator
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), прикреплены к этому компоненту. yii\base\Component
getAttributeNames() Возвращает очищенные имена атрибутов без символа ! в начале yii\validators\Validator
getBehavior() Возвращает объект поведения с заданным именем. yii\base\Component
getBehaviors() Возвращает все прикрепленные к этому компоненту поведения. yii\base\Component
getClientOptions() Возвращает параметры проверки на стороне клиента. yii\validators\FileValidator
getSizeLimit() Возвращает максимальный размер, разрешённый для загружаемых файлов. yii\validators\FileValidator
hasEventHandlers() Возвращает значение, указывающее, есть ли обработчик, прикреплённый к событию с заданным именем. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Component
hasProperty() Возвращает значение, указывающее, определено ли свойство для этого компонента. yii\base\Component
init() Инициализирует объект. yii\validators\FileValidator
isActive() Возвращает значение, указывающее, активен ли валидатор для данного сценария и атрибута. yii\validators\Validator
isEmpty() Проверяет, является ли заданное значение пустым. yii\validators\FileValidator
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Прикрепляет обработчик событий к событию. yii\base\Component
trigger() Вызывает событие. yii\base\Component
validate() Проверяет заданное значение. yii\validators\Validator
validateAttribute() Проверяет один атрибут. yii\validators\FileValidator
validateAttributes() Проверяет указанный объект. yii\validators\Validator

Защищённые методы

Метод Описание Определено в
formatMessage() Форматирует сообщение с использованием I18N или простым strtr, если \Yii::$app недоступен. yii\validators\Validator
validateExtension() Проверяет, соответствует ли тип загруженного файла (расширение) текущим настройкам валидатора. yii\validators\FileValidator
validateMimeType() Проверяет mimeType файла $file по списку в свойстве $mimeTypes yii\validators\FileValidator
validateValue() Проверяет значение. yii\validators\FileValidator

Подробности свойств

$checkExtensionByMimeType общедоступное свойство

Определяет, следует ли проверять тип файла (расширение) с помощью mime-типа. Если расширение, полученное из проверки mime-типа файла, отличается от расширения загруженного файла, файл считается недопустимым.

public boolean $checkExtensionByMimeType = true

$extensions общедоступное свойство

Список разрешённых расширений имён файлов. Может быть массивом или строкой, содержащей имена расширений, разделённые пробелами или запятыми (например, "gif, jpg"). Имена расширений нечувствительны к регистру. По умолчанию равно null, что означает, что все расширения имён файлов разрешены.

См. также $wrongExtension для настраиваемого сообщения о неправильном типе файла.

public array|string $extensions = null

$maxFiles общедоступное свойство

Максимальное количество файлов, которые может содержать данный атрибут. По умолчанию равно 1, что означает загрузку одного файла. Определением большего значения становится возможной многократная загрузка. Установка в значение 0 означает отсутствие ограничения на количество файлов, которые можно загрузить одновременно.

Примечание: Максимальное количество одновременно загружаемых файлов также ограничено директивой PHP max_file_uploads, которая по умолчанию равна 20.

См. также:

  • http://php.net/manual/en/ini.core.php#ini.max-file-uploads
  • $tooMany для настраиваемого сообщения, когда загружено слишком много файлов.
public integer $maxFiles = 1

$maxSize общедоступное свойство

Максимальное количество байтов, требуемых для загружаемого файла. По умолчанию равно null, что означает отсутствие ограничения. Обратите внимание, что лимит размера также зависит от upload_max_filesize и post_max_size настроек INI и значения скрытого поля 'MAX_FILE_SIZE'. Подробнее см. getSizeLimit().

См. также:

  • http://php.net/manual/en/ini.core.php#ini.upload-max-filesize
  • http://php.net/post-max-size
  • getSizeLimit()
  • $tooBig для настраиваемого сообщения о слишком большом файле.
public integer $maxSize = null

$message общедоступное свойство

Сообщение об ошибке, используемое, когда файл загружен неправильно.

public string $message = null

$mimeTypes общедоступное свойство

Список типов MIME файлов, которые разрешено загружать. Это может быть массив или строка, содержащая типы MIME файлов, разделенные пробелами или запятыми (например, "text/plain, image/png"). Для сопоставления групп типов MIME может использоваться маска со специальным символом *. Например, image/* пройдет все типы MIME, начинающиеся с image/ (например, image/jpeg, image/png). Названия типов MIME нечувствительны к регистру. По умолчанию равно null, что означает, что разрешены все типы MIME.

См. также $wrongMimeType для настраиваемого сообщения о неправильном типе MIME.

public array|string $mimeTypes = null

$minSize общедоступное свойство

Минимальное количество байтов, требуемых для загружаемого файла. По умолчанию равно null, что означает отсутствие ограничения.

См. также $tooSmall для настраиваемого сообщения о слишком маленьком файле.

public integer $minSize = null

$sizeLimit общедоступное только для чтения свойство

Лимит размера загружаемых файлов.

public integer getSizeLimit ( )

$tooBig общедоступное свойство

Сообщение об ошибке, используемое, когда загружаемый файл слишком большой. Вы можете использовать следующие токены в сообщении:

  • {attribute}: имя атрибута
  • {file}: имя загружаемого файла
  • {limit}: максимальный разрешенный размер (см. getSizeLimit())
  • {formattedLimit}: максимальный размер, отформатированный с помощью Formatter::asShortSize()
public string $tooBig = null

$tooMany общедоступное свойство

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

  • {attribute}: имя атрибута
  • {limit}: значение $maxFiles
public string $tooMany = null

$tooSmall общедоступное свойство

Сообщение об ошибке, используемое, когда загружаемый файл слишком маленький. Вы можете использовать следующие токены в сообщении:

  • {attribute}: имя атрибута
  • {file}: имя загружаемого файла
  • {limit}: значение $minSize
  • {formattedLimit}: значение $minSize отформатированное с помощью [[\yii\i18n\Formatter::asShortSize()|Formatter::asShortSize()]
public string $tooSmall = null

$uploadRequired общедоступное свойство

Сообщение об ошибке, используемое, когда файл не загружен. Обратите внимание, что это текст сообщения об ошибке валидации. Чтобы сделать загрузку файлов обязательной, необходимо установить $skipOnEmpty на false.

public string $uploadRequired = null

$wrongExtension общедоступное свойство

Сообщение об ошибке, используемое, когда у загружаемого файла имя расширения не указано в $extensions. Вы можете использовать следующие токены в сообщении:

  • {attribute}: имя атрибута
  • {file}: имя загружаемого файла
  • {extensions}: список разрешенных расширений.
public string $wrongExtension = null

$wrongMimeType общедоступное свойство

Сообщение об ошибке, используемое, когда у файла тип MIME не разрешен свойством $mimeTypes. Вы можете использовать следующие токены в сообщении:

  • {attribute}: имя атрибута
  • {file}: имя загружаемого файла
  • {mimeTypes}: значение $mimeTypes
public string $wrongMimeType = null

Подробное описание методов

clientValidateAttribute() public method

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

Вызывает getClientOptions() для генерации массива опций для проверки на стороне клиента.

Вы можете переопределить этот метод, чтобы вернуть JavaScript-код проверки, если валидатор поддерживает проверку на стороне клиента.

В коде проверки предварительно определены следующие JavaScript-переменные:

  • attribute: объект, описывающий атрибут, который проверяется.
  • value: значение, которое проверяется.
  • messages: массив, используемый для хранения сообщений об ошибках проверки для атрибута.
  • deferred: массив, используемый для хранения отложенных объектов для асинхронной проверки
  • $form: jQuery-объект, содержащий элемент формы

Объект attribute содержит следующие свойства:

  • id: уникальный идентификатор, определяющий атрибут (например, "loginform-username") в форме
  • name: имя атрибута или выражение (например, "[0]content" для табличных данных)
  • container: jQuery-селектор контейнера поля ввода
  • input: jQuery-селектор поля ввода в контексте формы
  • error: jQuery-селектор тега ошибки в контексте контейнера
  • status: состояние поля ввода, 0: пустое, не вводилось ранее, 1: проверка пройдена, 2: ожидается проверка, 3: проверка выполняется
public string|null clientValidateAttribute ( $model, $attribute, $view )
$model yii\base\Model

Проверяемая модель данных

$attribute string

Имя атрибута, который нужно проверить.

$view yii\web\View

Объект представления, который будет использоваться для рендеринга представлений или файлов представлений, содержащих форму модели с применением этого валидатора.

return string|null

Сценарий проверки на стороне клиента. Null, если валидатор не поддерживает проверку на стороне клиента.

getClientOptions() public method

Возвращает опции проверки на стороне клиента.

Этот метод обычно вызывается из clientValidateAttribute(). Вы можете переопределить этот метод, чтобы изменить опции, которые будут переданы в проверку на стороне клиента.

public array getClientOptions ( $model, $attribute )
$model yii\base\Model

Проверяемая модель

$attribute string

Имя проверяемого атрибута

return array

Опции проверки на стороне клиента

getSizeLimit() public method

Возвращает максимальный размер разрешённых загружаемых файлов.

Это определяется на основе четырёх факторов:

  • 'upload_max_filesize' в php.ini
  • 'post_max_size' в php.ini
  • 'MAX_FILE_SIZE' скрытое поле
  • $maxSize
public integer getSizeLimit ( )
return integer

Предел размера загружаемых файлов.

init() public method

Инициализирует объект.

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

public void init ( )

isEmpty() public method

Проверяет, является ли заданное значение пустым.

Значение считается пустым, если оно null, пустой массив или пустая строка. Обратите внимание, что этот метод отличается от PHP empty(). Он вернёт false, когда значение равно 0.

public boolean isEmpty ( $value, $trim = false )
$value mixed

Значение, которое нужно проверить

$trim boolean
return boolean

Является ли значение пустым

validateAttribute() public method

Проверяет один атрибут.

Подклассы должны реализовать этот метод, чтобы предоставить фактическую логику проверки.

public void validateAttribute ( $model, $attribute )
$model yii\base\Model

Проверяемая модель данных

$attribute string

Имя атрибута, который нужно проверить.

validateExtension() protected method

Проверяет, имеет ли заданный загруженный файл правильный тип (расширение) в соответствии с текущими настройками валидатора.

protected boolean validateExtension ( $file )
$file yii\web\UploadedFile

validateMimeType() protected method (available since version 2.0.8)

Проверяет mimeType файла $file на соответствие списку в свойстве $mimeTypes.

См. также $mimeTypes.

protected boolean validateMimeType ( $file )
$file yii\web\UploadedFile
return boolean

Разрешен ли mimeType файла $file

throws yii\base\InvalidConfigException

validateValue() protected method

Проверяет значение.

Класс валидатора может реализовать этот метод, чтобы поддерживать проверку данных вне контекста модели данных.

protected array|null validateValue ( $value )
$value mixed

Значение данных для проверки.

return array|null

Сообщение об ошибке и параметры, которые нужно вставить в сообщение об ошибке. Null должен возвращаться, если данные верны.

throws yii\base\NotSupportedException

если валидатор не поддерживает проверку данных без модели

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-validators-filevalidator.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API