Yii2.0-单文件上传
来源:互联网 发布:淘宝家具品牌排行榜 编辑:程序博客网 时间:2024/06/15 11:15
Yii2.0-单文件上传
error: 需打开php.ini fileinfo扩展
—>—>—>—>
创建控制器FormController
<?php namespace frontend\controllers;use Yii;use yii\web\Controller;use frontend\models\Uploads;use yii\web\UploadedFile;class FormController extends Controller{ public function actionMyfile(){ $model=new Uploads(); return $this->render('myfile',['model'=>$model]); } public function actionGetfile(){ $model = new Uploads(); if (Yii::$app->request->isPost) { $model->imgFile = UploadedFile::getInstance($model, 'imgFile'); //////验证大小 $fileSize=$model->imgFile->size; $maxSize=1024*1024*10; $minSize=1; if($fileSize>$minSize&&$fileSize<$maxSize){ if ($model->upload()) { // 文件上传成功 echo '上传成功'; } }else{ echo 'error'; } } }
创建模型Uploads.php
<?phpnamespace frontend\models;use Yii;use yii\base\Model;use yii\web\UploadedFile;class Uploads extends Model{ public $imgFile; //验证 public function rules(){ return [ [['imgFile'], 'file','extensions' => 'png, jpg','maxSize'=>1024*1024*10,'minSize'=>1], ]; } //上传 public function upload(){ if ($this->validate()) { $this->imgFile->saveAs('uploads/' . $this->imgFile->baseName . '.' . $this->imgFile->extension); return true; } else { return false; } }}
注意这里我们没有用model->load(…),而是用了UploadedFile::getInstance(…)。区别是后者不会执行
上传文件不能为空
public function rules(){ return [ [['file'], 'file', 'skipOnEmpty' => false], ];}
创建视图/views/form/myfile.php
<?phpuse yii\helpers\Html;use yii\widgets\ActiveForm;$form = ActiveForm::begin([ 'id' => 'login-form', 'options' => ['class' => 'form-horizontal','enctype' => 'multipart/form-data'], 'action'=>'?r=form/getfile', 'method'=>'post']) ?> <?= $form->field($model, 'imgFile')->fileInput() ?> <div class="form-group"> <div class="col-lg-offset-1 col-lg-11"> <?= Html::submitButton('上传', ['class' => 'btn btn-primary']) ?> </div> </div><?php ActiveForm::end() ?>
阅读全文
0 0
- Yii2.0-单文件上传
- Yii2.0文件上传
- yii2.0 文件上传
- YII2单文件上传,YII2多文件上传,YII2批量上传
- yii2 单文件上传和多文件上传
- yii2.0表单上传文件
- yii2.0多文件上传
- yii2.0实现文件上传
- Yii2.0-多文件上传
- yii2之单文件与多文件上传
- Yii2文件上传UploadedFile,单文件和多文件上传及验证示例Debug-OK
- Yii2.0-文件上传操作类-UploadedFile
- Yii2上传文件
- yii2文件上传
- yii2的文件上传
- yii2文件上传
- yii2文件上传
- yii2 文件上传
- 2.配置SVN服务器
- javascript 使用btoa和atob来进行Base64转码和解码
- qt中使用scrollarea控件显示滚动条随窗口自适应变化
- ACM算法分类和资源
- hessian 远程访问异常
- Yii2.0-单文件上传
- centos安装git
- java concurrent-ThreadPoolExecutor
- STM32上使用UCOSII--软件定时器和任务延时
- nginx配置基于域名的虚拟主机
- [编程题]求1+2+3+...+n
- HDU 2577 How to Type
- SVM的三层境界
- JavaScript 之 ArrayBuffer