Maison  >  Article  >  développement back-end  >  Code sur le téléchargement multi-fichiers Yii2.0

Code sur le téléchargement multi-fichiers Yii2.0

不言
不言original
2018-06-15 14:41:221465parcourir

Cet article présente des exemples de téléchargement multi-fichiers Yii2.0 à travers un exemple de code. Il est très bon et a une valeur de référence. Les amis qui en ont besoin peuvent s'y référer

Code sur le téléchargement multi-fichiers Yii2.0
Code sur le téléchargement multi-fichiers Yii2.0Code sur le téléchargement multi-fichiers Yii2.0

Créer un contrôleur 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;;
      }
    }
  }

Créer un modèle Uploadm.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;
   }
  }
}

Créer une vue/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() ?>

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Analyse de la requête d'association de table Yii2.0

Comment utiliser le framework Yii pour supprimer des composants Comportement de liaison

Comment Yii2 implémente la recherche de plusieurs champs en même temps

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn