Yii2使用表单上传文件的实例代码
yii2用表单上传文件常常用到的,该奈何上传呢? 1、单个文件上传起首成立一个模子models/UploadForm.php,内容如下 use yiibaseModel;use yiiwebUploadedFile; /**
/**
再成立一个视图文件,内容如下 <?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]) ?> <?= $form->field($model,'file')->fileInput() ?> <?php ActiveForm::end() ?> 最后成立节制器文件,内容如下 use Yii;use yiiwebController; use appmodelsUploadForm; use yiiwebUploadedFile; class SiteController extends Controller
} 留意这里我们没有效model->load(...),而是用了UploadedFile::getInstance(...)。区别是后者不会执行$model->validate(),以是必要手动的去执行$model->validate()来检讨数据的正当性。假如检讨通过了,上传的文件生涯在uploads文件夹下,即web目次下的uploads里。 一些可选的设置选项 上传文件不能为空 false],]; }上传范例,不只可以按照扩展名检讨,还可以按照文件的内容举办检讨 'jpg,png','mimeTypes' => 'image/jpeg,image/png',],]; }2、多文件上传假如你想一次上传多个文件,只需调理几个参数就可以到达目标 Model: /**
View: $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]);?> <?= $form->field($model,'file[]')->fileInput(['multiple' => true]) ?> <?php ActiveForm::end(); ?> 与单文件上传差异的是下面这句 field($model,'file[]')->fileInput(['multiple' => true])Controller: use Yii;use yiiwebController; use appmodelsUploadForm; use yiiwebUploadedFile; class SiteController extends Controller
} 这样就可以实现多文件上传了。 参考https://github.com/yiisoft/yii2/blob/master/docs/guide/input-file-upload.md 以上就是本文的所有内容,但愿对各人的进修有所辅佐,也但愿各人多多支持编程之家。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |