Home  >  Article  >  Backend Development  >  Code about Yii2.0 multi-file upload

Code about Yii2.0 multi-file upload

不言
不言Original
2018-06-15 14:41:221487browse

This article introduces Yii2.0 multi-file upload example instructions through example code. It is very good and has reference value. Friends who need it can refer to it

Code about Yii2.0 multi-file upload
Code about Yii2.0 multi-file uploadCode about Yii2.0 multi-file upload

Create controller FormController

<?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(&#39;myfiles&#39;,[&#39;model&#39;=>$model]);
  }
  public function actionGetfiles(){
    $model = new Uploadm();
    if (Yii::$app->request->isPost) {
      $model->imgFile = UploadedFile::getInstances($model, &#39;imgFile&#39;);
      if ($model->upload()) {
        // 文件上传成功
        echo &#39;上传成功&#39;;
      }
    }
  }

Create modelUploadm.php

<?php
namespace frontend\models;
use Yii;
use yii\base\Model;
use yii\web\UploadedFile;
class Uploadm extends Model
{
  public $imgFile;
  public function rules(){
    return [
       [[&#39;imgFile&#39;], &#39;file&#39;,&#39;maxFiles&#39; => 5],//最多5张
    ];
  }
  public function upload()
  {
   if ($this->validate()) { 
     foreach ($this->imgFile as $file) {
       $file->saveAs(&#39;uploads/&#39; . $file->baseName . &#39;.&#39; . $file->extension);
     }
     return true;
   } else {
     return false;
   }
  }
}

Create view/views/form/myfiles.php

<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
$form = ActiveForm::begin([
  &#39;id&#39; => &#39;login-form&#39;,
  &#39;options&#39; => [&#39;class&#39; => &#39;form-horizontal&#39;,&#39;enctype&#39; => &#39;multipart/form-data&#39;],
  &#39;action&#39;=>&#39;?r=form/getfiles&#39;,
  &#39;method&#39;=>&#39;post&#39;
]) ?>
  <?= $form->field($model, &#39;imgFile[]&#39;)->fileInput([&#39;multiple&#39; => true]) ?>

  <p class="form-group">
    <p class="col-lg-offset-1 col-lg-11">
      <?= Html::submitButton(&#39;上传&#39;, [&#39;class&#39; => &#39;btn btn-primary&#39;]) ?>
    </p>
  </p>
<?php ActiveForm::end() ?>

The above is the summary of this article All content, I hope it will be helpful to everyone's learning. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

Analysis of Yii2.0 table association query

How to use the Yii framework to remove components Binding behavior

How Yii2 can search multiple fields at the same time

##

The above is the detailed content of Code about Yii2.0 multi-file upload. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn