Laravel框架文件上傳功能實(shí)現(xiàn)方法示例
本文實(shí)例講述了Laravel框架文件上傳功能實(shí)現(xiàn)方法。分享給大家供大家參考,具體如下:
- 以Laravel 5.2.45 框架為主,進(jìn)行文件上傳功能的實(shí)現(xiàn)如下:
實(shí)現(xiàn)步驟:
(1). 配置文件修改
打開 config/filesystems.php 文件
在 ‘disks' 數(shù)組中添加如下代碼
//自定義
'uploads' => [
'driver' => 'local',
//'root' => storage_path('app/uploads'),
'root' => public_path('uploads/'.date('Ymd')),
],
(2).前端視圖 upload.blade.php
根據(jù)需求,設(shè)計簡單的視圖,核心代碼如下
<div class="panel panel-default">
<div class="panel-heading">文件上傳</div>
<div class="panel-body">
<form class="form-horizontal" role="form" method="POST" action="" enctype="multipart/form-data">
{{ csrf_field() }}
<div class="form-group">
<label for="file" class="col-md-4 control-label">Hello world</label>
<div class="col-md-6">
<input id="file" type="file" class="form-control" name="source">
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-sign-in"></i> 上傳
</button>
</div>
</div>
</form>
</div>
</div>
(3). 控制器核心代碼
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
//上傳文件 功能實(shí)現(xiàn)方法
public function upload(Request $request){
if ($request->isMethod('POST')){
$file = $request->file('source');
//判斷文件是否上傳成功
if ($file->isValid()){
//原文件名
$originalName = $file->getClientOriginalName();
//擴(kuò)展名
$ext = $file->getClientOriginalExtension();
//MimeType
$type = $file->getClientMimeType();
//臨時絕對路徑
$realPath = $file->getRealPath();
$filename = uniqid().'.'.$ext;
$bool = Storage::disk('uploads')->put($filename,file_get_contents($realPath));
//判斷是否上傳成功
if($bool){
echo 'success';
}else{
echo 'fail';
}
}
}
return view('upload');
}
(4). 執(zhí)行上述方法結(jié)果
通過調(diào)用上述方法,正確執(zhí)行后,上傳的文件將出現(xiàn)在 public/uploads 的對應(yīng)日期目錄下

更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進(jìn)階教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設(shè)計有所幫助。
相關(guān)文章
Zend Framework入門教程之Zend_Registry組件用法詳解
這篇文章主要介紹了Zend Framework入門教程之Zend_Registry組件用法,結(jié)合實(shí)例形式分析了Zend_Registry組件實(shí)現(xiàn)對象注冊的設(shè)置、獲取、判斷、刪除等操作常用技巧,需要的朋友可以參考下2016-12-12
php刪除數(shù)組指定元素實(shí)現(xiàn)代碼
這篇文章主要介紹了php刪除數(shù)組指定元素實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下2017-05-05
Yii 訪問 Gii(腳手架)時出現(xiàn) 403 錯誤
這篇文章主要介紹了Yii 訪問 Gii(腳手架)時出現(xiàn) 403 錯誤的解決方法的相關(guān)資料,需要的朋友可以參考下2018-06-06
PHP在網(wǎng)頁中動態(tài)生成PDF文件詳細(xì)教程
這篇文章主要介紹了PHP在網(wǎng)頁中動態(tài)生成PDF文件詳細(xì)教程,本文用一個需求為引,詳細(xì)介紹每一步驟的做法,并配有大量圖片說明,需要的朋友可以參考下2014-07-07
PHPMYADMIN導(dǎo)入數(shù)據(jù)最大為2M的解決方法
PHPMYADMIN還原數(shù)據(jù)庫的時候上傳的最大限制:2,048 KB,數(shù)據(jù)庫稍微大一些就無法處理,要么使用其他的備份還原工具如帝國備份王,要么就分卷導(dǎo)出,那么有沒有辦法還使用PHPMYADMIN來處理呢2012-04-04
PHP遞歸獲取目錄內(nèi)所有文件的實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄狿HP遞歸獲取目錄內(nèi)所有文件的實(shí)現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11

