yii\web\UploadedFile::getInstance PHP Method

getInstance() public static method

The file should be uploaded using [[\yii\widgets\ActiveField::fileInput()]].
See also: getInstanceByName()
public static getInstance ( Model $model, string $attribute ) : UploadedFile
$model yii\base\Model the data model
$attribute string the attribute name. The attribute name may contain array indexes. For example, '[1]file' for tabular file uploading; and 'file[1]' for an element in a file array.
return UploadedFile the instance of the uploaded file. Null is returned if no file is uploaded for the specified model attribute.
    public static function getInstance($model, $attribute)
    {
        $name = Html::getInputName($model, $attribute);
        return static::getInstanceByName($name);
    }

Usage Example

Example #1
1
 function beforeSave($insert)
 {
     if (parent::beforeSave($insert)) {
         $file = UploadedFile::getInstance($this, 'image');
         if ($file && $file->error === UPLOAD_ERR_OK) {
             // Ищем, есть ли уже такой загруженный файл
             $file_model = Files::findOne(['hash' => md5_file($file->tempName)]);
             if ($file_model) {
                 $file_model->repeats++;
             } else {
                 $file_model = new Files();
                 $file_model->saveImageFile($file);
                 $file_model->repeats = 1;
             }
             $file_model->save();
             $this->file_id = $file_model->id;
         } else {
             $this->addError('image', 'Невозможно загрузить файл');
             return false;
         }
         return true;
     } else {
         return false;
     }
 }
All Usage Examples Of yii\web\UploadedFile::getInstance