您现在的位置是:网站首页>>PHP>>laravel

laravel 实现文件上传

发布时间:2018-12-17 14:32:27作者:wangjian浏览量:532点赞量:0

    laravel的intervention/image拓展拓展只支持图片的上传,不支持其他格式的文件上传,但是laravel自带了一个文件上传功能

    一:文件上传配置

    上传文件配置文件:config/filesystems.php
    在上传文件的配置文件中有一个disk配置

    image.png

    在disk配置中

    1:local,public,s3表示不同的存储方式

    2:driver表示存储位置,local表示本地存储,s3表示存储在亚马逊的磁盘位置

    3:root表示的是文件存储的位置。‘app/public’表示的就是文件存储在storage/app/public下面

    正常的只需要driver和root两个配置项就够了

    二:使用文件上传功能

    //判断是否是post传值
    if ($request->isMethod('POST')) {
        //获取上传文件信息image上传的name名
        $fileCharater = $request->file('image');
        if ($fileCharater->isValid()) {
            //获取文件的扩展名
            $ext = $fileCharater->getClientOriginalExtension();
            //获取文件的绝对路径
            $path = $fileCharater->getRealPath();
            //定义文件名
            $filename = date('Y-m-d').'/'.date('Y-m-d-h-i-s').'.'.$ext;
            //存储文件。disk里面的public。总的来说,就是调用disk模块里的public配置
            Storage::disk('public')->put($filename, file_get_contents($path));
        }
    }

    根据上面实例即可完成上传文件

0 +1