ホームページ  >  記事  >  バックエンド開発  >  Yii2.0 マルチファイルアップロードに関するコード

Yii2.0 マルチファイルアップロードに関するコード

不言
不言オリジナル
2018-06-15 14:41:221479ブラウズ

この記事では、サンプル コードを通じて Yii2.0 のマルチファイル アップロード手順を紹介します。これは非常に優れており、必要な方は参考にしてください。

Yii2.0 マルチファイルアップロードに関するコード
Yii2.0 マルチファイルアップロードに関するコードYii2.0 マルチファイルアップロードに関するコード

コントローラー 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;;
      }
    }
  }

モデルの作成 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;
   }
  }
}

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() ?>

上記はこの記事の概要 すべての内容が皆さんの学習に役立つことを願っています。その他の関連コンテンツについては、PHP 中国語 Web サイトに注目してください。

関連する推奨事項:

Yii2.0 テーブル関連付けクエリの分析

Yii フレームワークを使用してコンポーネントを削除する方法バインド動作

Yii2 が複数のフィールドを同時に検索できる方法

##

以上がYii2.0 マルチファイルアップロードに関するコードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。