三个文件:模型、控制器和视图
1、模型:upload.PHP
- <?php
- namespace app\models;
- use yii\base\Model;
- class Upload extends Model
- {
- public $file;
- /**
- * @return array the validation rules.
- */
- public function rules()
- {
- return [
- [['file'], 'file'],
- ];
- }
- }
- ?>
2、控制器:upload方法
- //文件上传功能
- public function actionUpload()
- {
- $model = new Upload();
- 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]);
- }
3、视图:upload.php
- <?php
- use yii\widgets\ActiveForm;
- ?>
- <?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]) ?>
- <?= $form->field($model, 'file')->fileInput() ?>
- <button>Submit</button>
- <?php ActiveForm::end() ?>