• Laravel 文件上传


    1 配置文件

    configfilesystems.php

    复制一个配置

    'public' => [
    'driver' => 'local',
    'root' => storage_path('app/public'),
    'url' => env('APP_URL').'/storage',
    'visibility' => 'public',
    ],
    然后配置成如下形式:
     //storage_path 指storage目录
            'uploads' => [
                'driver' => 'local',
                'root' => storage_path('app/uploads'),
    
            ],

     2 创建路由

    Route::any('/upload',['uses'=>'StudentController@upload']);

    3 模板文件

    esourcesviewsstudentupload.blade.php

    @extends('layouts.app')
    @section('content')
    <div>
        <form method="POST" action="" enctype="multipart/form-data">
            @csrf
            <div >
                <input type="file" name="source" id="file" > 请选择文件
                <button type="submit">
                   确认上传
                </button>
            </div>
        </form>
    </div>
    @endsection

    4 控制器

    appHttpControllersStudentController.php

    public  function  upload(Request $request)
        {
            if ($request->isMethod("POST")){
                //var_dump($_FILES);
                $file = $request->file('source');
                //判断是否上传成功
                if ($file->isValid()){
                    //获取原文件名
                    $originalName = $file->getClientOriginalName();
                    //获取扩展名
                    $ext = $file->getClientOriginalExtension();
                    //文件的类型
                    $file->getClientMimeType();
                    //临时文件的绝对路径
                    $realPath = $file->getRealPath();
                    //新文件名
                    $fileName = date('Y-m-d-H-i-s').'-'.uniqid().'.'.$ext;
                    $bool = Storage::disk('uploads')->put($fileName,file_get_contents($realPath));
                    if($bool){
                        echo '上传成功';
                    }
                }
    
            }
            return view('student.upload');
        }
  • 相关阅读:
    2019.10.11CSS
    2019.10.11 THML
    虚拟机FAQ
    thinkpad安装虚拟机 开启虚拟功能要在bios的security里面设置
    JDK在windows系统下环境变量的设置
    有关operamasks-ui的一些信息汇总
    从用List给ArrayList赋值看容器的传值,最好用.addAll
    给eclipse安装svn插件
    Java接口 枚举型Enumeration
    linux下的grep命令
  • 原文地址:https://www.cnblogs.com/polax/p/13369778.html
Copyright © 2020-2023  润新知