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;
        }

文件存放的目录结构为:

Laravel 5.5 简单上传文件功能_第1张图片

最后就是视图中展示了:

 

仅供新手参考,希望可以帮到你,打扰了.

你可能感兴趣的:(PHP-Laravel5)