In diesem Artikel wird hauptsächlich das praktische Projekt zur Implementierung des Bild-Uploads in yii2 vorgestellt.
Das Hochladen von Bildern ist für die Anwendung fast ein Muss Ich habe die Dateieingabe von Kartik auch ausführlich beschrieben, aber viele Leute haben über verschiedene Probleme berichtet. Nachfolgend habe ich eine separate Komponente für die Verwendung des Webuploaders geschrieben. Diese Komponente kann eine Reihe von Problemen, die Yii2 während des Bild-Upload-Vorgangs verursacht, besser bewältigen. Sie unterstützt derzeit gemischte Uploads mehrerer Bilder, mehrerer Felder und mehrerer Modalitäten.
Lassen Sie uns vor der Einführung die Wirkung demonstrieren.
Installation
Es wird empfohlen, Composer für die Installation zu verwenden
$ php composer.phar require bailangzhan/yii2-webuploader dev-master
Verwenden Sie
params.php oder params-local.php, um Webuploader- und Domain-Konfigurationselemente hinzuzufügen
// 图片服务器的域名设置,拼接保存在数据库中的相对地址,可通过web进行展示 'domain' => 'http://blog.m/', 'webuploader' => [ // 后端处理图片的地址,value 是相对的地址 'uploadUrl' => 'blog/upload', // 多文件分隔符 'delimiter' => ',', // 基本配置 'baseConfig' => [ 'defaultImage' => 'http://img1.imgtn.bdimg.com/it/u=2056478505,162569476&fm=26&gp=0.jpg', 'disableGlobalDnd' => true, 'accept' => [ 'title' => 'Images', 'extensions' => 'gif,jpg,jpeg,bmp,png', 'mimeTypes' => 'image/*', ], 'pick' => [ 'multiple' => false, ], ], ],
webuploader['baseConfig'] Siehe die offizielle Parameterbeschreibung des Webuploaders
Datei anzeigen
Einzelbild
<?php echo $form->field($model, 'file')->widget('manks\FileInput', [ ]); ?>
Mehrere Bilder
<?php echo $form->field($model, 'file2')->widget('manks\FileInput', [ 'clientOptions' => [ 'pick' => [ 'multiple' => true, ], // 'server' => Url::to('upload/u2'), // 'accept' => [ // 'extensions' => 'png', // ], ], ]); ?>
Die Adresse des Controllers kann in Parametern angegeben werden .php oder params-local Konfigurieren Sie Yii::$app->params['webuploader']['uploadUrl'] in .php oder konfigurieren Sie das Serverelement in clientOptions. Das Datenformat, das der Controller zurückgeben muss, ist wie folgt:
// 错误时 {"code": 1, "msg": "error"} // 正确时, 其中 attachment 指的是保存在数据库中的路径,url 是该图片在web可访问的地址 {"code": 0, "url": "http://domain/图片地址", "attachment": "图片地址"}
clientOptions siehe auch die offizielle Parameterbeschreibung des Webuploaders
Hinweis
Wenn es sich um einen modifizierten Multi-Image-Vorgang handelt, stellen Sie sicher, dass $model->file = 'src1,src2,src3,...' oder $model->file = ['src1 ', 'src2', ...];
Das Obige ist der gesamte Inhalt dieses Artikels Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website!
Verwandte Empfehlungen:
Über das von Yii implementierte mehrstufige Verknüpfungs-Dropdown-Menü
yii2 implementiert Paging und Paging mit Suchfunktion
Code zum Yii2.0-Upload mehrerer Dateien
Das obige ist der detaillierte Inhalt vonInformationen zum Code für die Verwendung des Webuploaders zum Hochladen von Bildern in yii2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!