Yii2使用自帶的UploadedFile實(shí)現(xiàn)的文件上傳
我們先來看看在yii2中支持的圖片上傳怎么進(jìn)行處理的。
首先我們創(chuàng)建model\Upload.php文件
<?php namespace backend\models; use Yii; use yii\web\UploadedFile; class Upload extends \yii\db\ActiveRecord { /** * @var UploadedFile|Null file attribute */ public $file; /** * @return array the validation rules. */ public function rules() { return [ [["file"], "file",], ]; } }
下面我們看看view層是怎么渲染的
<?php use yii\widgets\ActiveForm; $form = ActiveForm::begin(["options" => ["enctype" => "multipart/form-data"]]); ?> <?= $form->field($model, "file")->fileInput() ?> <button>Submit</button> <?php ActiveForm::end(); ?>
最后實(shí)現(xiàn)controller層的實(shí)現(xiàn)
namespace backend\controllers; use backend\models\Upload; use yii\web\UploadedFile; class ToolsController extends \yii\web\Controller { /** * 文件上傳 * 我們這里上傳成功后把圖片的地址進(jìn)行返回 */ public function actionUpload () { $model = new Upload(); $uploadSuccessPath = ""; if (Yii::$app->request->isPost) { $model->file = UploadedFile::getInstance($model, "file"); //文件上傳存放的目錄 $dir = "../../public/uploads/".date("Ymd"); if (!is_dir($dir)) mkdir($dir); if ($model->validate()) { //文件名 $fileName = date("HiiHsHis").$model->file->baseName . "." . $model->file->extension; $dir = $dir."/". $fileName; $model->file->saveAs($dir); $uploadSuccessPath = "/uploads/".date("Ymd")."/".$fileName; } } return $this->render("upload", [ "model" => $model, "uploadSuccessPath" => $uploadSuccessPath, ]); } }
以上所述是小編給大家介紹的Yii2使用自帶的UploadedFile實(shí)現(xiàn)的文件上傳的相關(guān)知識(shí),希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Yii2使用表單上傳文件的實(shí)例代碼
- Yii2組件之多圖上傳插件FileInput的詳細(xì)使用教程
- yii2整合百度編輯器umeditor及umeditor圖片上傳問題的解決辦法
- Yii2實(shí)現(xiàn)ajax上傳圖片插件用法
- yii2利用自帶UploadedFile實(shí)現(xiàn)上傳圖片的示例
- yii2 上傳圖片的示例代碼
- yii2高級(jí)應(yīng)用之自定義組件實(shí)現(xiàn)全局使用圖片上傳功能的方法
- Yii2.0使用阿里云OSS的SDK上傳圖片、下載、刪除圖片示例
- yii2.0整合阿里云oss上傳單個(gè)文件的示例
- Yii2.0多文件上傳實(shí)例說明
- yii2多圖上傳組件的使用教程
- YII2框架實(shí)現(xiàn)表單中上傳單個(gè)文件的方法示例
相關(guān)文章
PHP 中TP5 Request 請(qǐng)求對(duì)象的實(shí)例詳解
這篇文章主要介紹了PHP 中TP5 Request 請(qǐng)求對(duì)象的實(shí)例詳解的相關(guān)資料,這里提供實(shí)現(xiàn)代碼幫助大家理解這部分內(nèi)容,需要的朋友可以參考下2017-07-07PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十三)
這篇文章主要介紹了PHP網(wǎng)頁游戲Xnova(ogame)源碼解讀的造船與防御代碼部分,需要的朋友可以參考下2014-06-06PHPMailer郵件發(fā)送的實(shí)現(xiàn)代碼
本篇文章介紹了,PHPMailer郵件發(fā)送的實(shí)現(xiàn)代碼。需要的朋友參考下2013-05-05PHP+Ajax異步帶進(jìn)度條上傳文件實(shí)例
這篇文章主要介紹了PHP+Ajax異步帶進(jìn)度條上傳文件實(shí)例代碼,代碼簡單易懂,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下。2016-11-11匹配csdn用戶數(shù)據(jù)庫與官方用戶的重合度并將重疊部分的用戶篩選出來
CSDN用戶數(shù)據(jù)泄漏導(dǎo)致官方用戶的安全受到了嚴(yán)重的威脅,故希望能把兩個(gè)站的用戶數(shù)據(jù)做個(gè)對(duì)比,把其中重疊部分的用戶篩選出來,并通知相應(yīng)用戶及時(shí)修改密碼,確保風(fēng)險(xiǎn)將至最低2011-12-12php設(shè)計(jì)模式之代理模式分析【星際爭霸游戲案例】
這篇文章主要介紹了php設(shè)計(jì)模式之代理模式,結(jié)合星際爭霸游戲案例形式分析了PHP設(shè)計(jì)模式中代理模式的相關(guān)原理、使用方法與操作注意事項(xiàng),需要的朋友可以參考下2020-03-03php頁面,mysql數(shù)據(jù)庫轉(zhuǎn)utf-8亂碼,utf-8編碼問題總結(jié)
一個(gè)網(wǎng)站如果需要國際化,就需要將編碼從GB2312轉(zhuǎn)成UTF-8,其中有很多的問題需要注意,如果沒有轉(zhuǎn)換徹底,將會(huì)有很多的編碼問題出現(xiàn)!接下來通過本篇文章給大家分享php頁面,mysql數(shù)據(jù)庫轉(zhuǎn)utf-8亂碼,utf-8編碼問題總結(jié),需要的朋友可以參考下2015-08-08使用symfony命令創(chuàng)建項(xiàng)目的方法
這篇文章主要介紹了使用symfony命令創(chuàng)建項(xiàng)目的方法,結(jié)合實(shí)例形式分析了Symfony命令的使用方法與項(xiàng)目創(chuàng)建的相關(guān)技巧,需要的朋友可以參考下2016-03-03