创建控制器formcontroller
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<?php
namespace frontend\controllers;
use yii;
use yii\web\controller;
use frontend\models\uploadm;
use yii\web\uploadedfile;
class formcontroller extends controller{
public function actionmyfiles(){
$model = new uploadm();
return $this ->renderpartial( 'myfiles' ,[ 'model' => $model ]);
}
public function actiongetfiles(){
$model = new uploadm();
if (yii:: $app ->request->ispost) {
$model ->imgfile = uploadedfile::getinstances( $model , 'imgfile' );
if ( $model ->upload()) {
// 文件上传成功
echo '上传成功' ;
}
}
}
|
创建模型uploadm.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?php
namespace frontend\models;
use yii;
use yii\base\model;
use yii\web\uploadedfile;
class uploadm extends model
{
public $imgfile ;
public function rules(){
return [
[[ 'imgfile' ], 'file' , 'maxfiles' => 5], //最多5张
];
}
public function upload()
{
if ( $this ->validate()) {
foreach ( $this ->imgfile as $file ) {
$file ->saveas( 'uploads/' . $file -> basename . '.' . $file ->extension);
}
return true;
} else {
return false;
}
}
}
|
创建视图/views/form/myfiles.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<?php
use yii\helpers\html;
use yii\widgets\activeform;
$form = activeform::begin([
'id' => 'login-form' ,
'options' => [ 'class' => 'form-horizontal' , 'enctype' => 'multipart/form-data' ],
'action' => '?r=form/getfiles' ,
'method' => 'post'
]) ?>
<?= $form ->field( $model , 'imgfile[]' )->fileinput([ 'multiple' => true]) ?>
<div class = "form-group" >
<div class = "col-lg-offset-1 col-lg-11" >
<?= html::submitbutton( '上传' , [ 'class' => 'btn btn-primary' ]) ?>
</div>
</div>
<?php activeform:: end () ?>
|
以上所述是小编给大家介绍的yii2.0多文件上传实例说明,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://blog.csdn.net/m0_38027358/article/details/75918730