這篇“l(fā)aravel系統(tǒng)自帶的文件上傳功能怎么用”除了程序員外大部分人都不太理解,今天小編為了讓大家更加理解“l(fā)aravel系統(tǒng)自帶的文件上傳功能怎么用”,給大家總結(jié)了以下內(nèi)容,具有一定借鑒價(jià)值,內(nèi)容詳細(xì)步驟清晰,細(xì)節(jié)處理妥當(dāng),希望大家通過(guò)這篇文章有所收獲,下面讓我們一起來(lái)看看具體內(nèi)容吧。
Laravel 是一套簡(jiǎn)潔、優(yōu)雅的PHP Web開(kāi)發(fā)框架。它可以讓你從面條一樣雜亂的代碼中解脫出來(lái);它可以幫你構(gòu)建一個(gè)完美的網(wǎng)絡(luò)APP,而且每行代碼都可以簡(jiǎn)潔、富于表達(dá)力。
對(duì)于上傳文件這個(gè)功能,說(shuō)難吧,其實(shí)都是封裝好的,真的不難。說(shuō)不難吧,各種配置什么的有時(shí)候真的也會(huì)讓人頭疼。今天呢,就說(shuō)一下關(guān)于laravel的上傳功能的介紹。
直接調(diào)用命令從composer上下載了一份laravel的框架,命名為blog(這個(gè)隨便)
進(jìn)入文件blog->config->filesystems.php,其中有一個(gè)disk的配置。
簡(jiǎn)單的解釋一下
disk配置項(xiàng)的總調(diào)用,在后面會(huì)用到的。可以把它當(dāng)做一個(gè)public的調(diào)用方法這樣就很好理解了
local代表的是其中的一個(gè)小的配置項(xiàng),因?yàn)榛蛟S一個(gè)項(xiàng)目中,要有很多不同的存儲(chǔ)方式或者存儲(chǔ)位置,local,public,s3都是表示不同的存儲(chǔ)方式。
driver表示的是存儲(chǔ)位置,像local表示的就是存儲(chǔ)在本地項(xiàng)目中。s3是存儲(chǔ)在亞馬遜的磁盤(pán)位置,或許還有很多,到時(shí)候我們就可以按照這三個(gè)的demo模式繼續(xù)的創(chuàng)建
因?yàn)橐话愣际谴鎯?chǔ)在項(xiàng)目本身,所以我們下面去掉s3的解釋。
root表示的是文件存儲(chǔ)的位置?!產(chǎn)pp/public’表示的就是文件存儲(chǔ)在blog->storage->app->public下面?!痑pp/public‘’是可以隨意的改變的。
正常的就像local的兩個(gè)配置就可以了。
創(chuàng)建路由,路由自己定義就好了(這個(gè)就不用解釋了吧)
編寫(xiě)和路由對(duì)應(yīng)的方法,在方法里面開(kāi)始編寫(xiě)代碼。
前端代碼
<p class="container"> <p class="panel-heading">上傳文件</p> <form class="form-horizontal" method="POST" action="" enctype="multipart/form-data"> {{ csrf_field() }} <label for="file">選擇文件</label> <input id="file" type="file" class="form-control" name="source" required> <button type="submit" class="btn btn-primary">確定</button> </form> </p>
紅色部分代碼是必須加上的,如果不加上的話,下面的php語(yǔ)句中的代碼驗(yàn)證就無(wú)法實(shí)現(xiàn)
后端代碼
3
public function upload(Request $request){ if ($request->isMethod('POST')) { //判斷是否是POST上傳,應(yīng)該不會(huì)有人用get吧,恩,不會(huì)的 //在源生的php代碼中是使用$_FILE來(lái)查看上傳文件的屬性 //但是在laravel里面有更好的封裝好的方法,就是下面這個(gè) //顯示的屬性更多 $fileCharater = $request->file('source'); if ($fileCharater->isValid()) { //括號(hào)里面的是必須加的哦 //如果括號(hào)里面的不加上的話,下面的方法也無(wú)法調(diào)用的 //獲取文件的擴(kuò)展名 $ext = $fileCharater->getClientOriginalExtension(); //獲取文件的絕對(duì)路徑 $path = $fileCharater->getRealPath(); //定義文件名 $filename = date('Y-m-d-h-i-s').'.'.$ext; //存儲(chǔ)文件。disk里面的public??偟膩?lái)說(shuō),就是調(diào)用disk模塊里的public配置 Storage::disk('public')->put($filename, file_get_contents($path)); } } return view('upload'); }
小編是一邊弄一邊打,生怕自己寫(xiě)錯(cuò)了給你們笑話。最后成功的上傳了文件進(jìn)去。
感謝你的閱讀,希望你對(duì)“l(fā)aravel系統(tǒng)自帶的文件上傳功能怎么用”這一關(guān)鍵問(wèn)題有了一定的理解,具體使用情況還需要大家自己動(dòng)手實(shí)驗(yàn)使用過(guò)才能領(lǐng)會(huì),快去試試吧,如果想閱讀更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)頁(yè)標(biāo)題:laravel系統(tǒng)自帶的文件上傳功能怎么用-創(chuàng)新互聯(lián)
本文URL:http://chinadenli.net/article34/dcpdpe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、品牌網(wǎng)站設(shè)計(jì)、營(yíng)銷型網(wǎng)站建設(shè)、做網(wǎng)站、關(guān)鍵詞優(yōu)化、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容