yii2利用自带UploadedFile上传图片

创建一个 models/UploadForm.php:

<?php
namespace appmodels;

use yiiaseModel;
use yiiwebUploadedFile;

/**
 * UploadForm is the model behind the upload form.
 */
class UploadForm extends Model
{
    /**
     * @var UploadedFile file attribute
     */
    public $file;

    /**
     * @return array the validation rules.
     */
    public function rules()
    {
        return [
            [['file'], 'file'],
        ];
    }
}

视图文件

<?php
use yiiwidgetsActiveForm;
?

> <?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]) ?

> <?

= $form->field($model, 'file')->fileInput() ?> <button>Submit</button> <?

php ActiveForm::end() ?>


控制器

<?php
use appmodelsUploadForm;
use yiiwebUploadedFile;

public function actionUpload()
{
    $model = new UploadForm();

    if (Yii::$app->request->isPost) {
        $model->file = UploadedFile::getInstance($model, 'file');

        if ($model->file && $model->validate()) {
            $model->file->saveAs('uploads/' . $model->file->baseName . '.' . $model->file->extension);
        }
    }

    return $this->render('upload', ['model' => $model]);
}
    








原文地址:https://www.cnblogs.com/yjbjingcha/p/6892349.html