1. 程式人生 > >Laravel 5.5 簡單上傳檔案功能

Laravel 5.5 簡單上傳檔案功能

遇到一點點坑... 馬克一下

直接上程式碼吧

首先需要設定配置檔案:config/filesystems.php

 

'public' => [
    'driver' => 'local',
    'root' => public_path('uploads'),  //public目錄-->檔案存放的目錄為public/uploads資料夾
    'url' => '/uploads',
    'visibility' => 'public',
],

上傳檔案程式碼如下:

返回為圖片地址,可以存在資料庫對應欄位

引數$file如下:

 

$file = $request->file('img');
/**
     * 檔案上傳
     * @param $file
     * @return string
     */
    public function upload($file){
        $folder = date('Ymd');
        //判斷資料夾是否已存在
        if(!Storage::disk('public')->exists($folder)){
            Storage::makeDirectory($folder);
        }
        //判斷檔案是否有效
        if($file->isValid()) {
            $newFileName = md5(microtime()).'.'.$file->getClientOriginalExtension();
            Storage::disk('public')->put($folder.'/'.$newFileName, file_get_contents($file));

            return "/uploads/".$folder."/".$newFileName;
        }

檔案存放的目錄結構為:

最後就是檢視中展示了:

 

<img src="{{URL::asset($val->img)}}" />

僅供新手參考,希望可以幫到你,打擾了.