laravel框架上传文件到七牛云

模型代码

 public function uploadFile()
    {
        // 判断是否有文件上传
        if (request()->hasFile('img')) {
            // 获取文件,file对应的是前端表单上传input的name
            $file = request()->file('img');
            // Laravel5.3中多了一个写法
            // $file = $request->file;

            // 初始化
            $disk = QiniuStorage::disk('qiniu');
            // 重命名文件
            $fileName = md5($file->getClientOriginalName().time().rand()).'.'.$file->getClientOriginalExtension();

            // 上传到七牛
            $bool = $disk->put('iwanli/image_'.$fileName,file_get_contents($file->getRealPath()));
            // 判断是否上传成功
            if ($bool) {
                $path = $disk->downloadUrl('iwanli/image_'.$fileName);
                echo '上传成功'.$path;
            }else{
                echo '上传失败';
            }

        }else{
            echo '没有文件';
        }

视图页面

form method="post" action="{{url('upload')}}" enctype="multipart/form-data">
    {{csrf_field()}}
    <input type="file" name="img">
    <button type="submit">上传图片</button>
</form>

将文件App\config\app.php

在数组prividers中添加
itbdw\QiniuStorage\QiniuFilesystemServiceProvider::class,

将文件App\config\filesystems.php

向disks数组中添加一个数组
 'qiniu' => [
            'driver'    => 'qiniu',
            'domain'    => 'xxxxx.bkt.clouddn.com',  //你的七牛域名
            'access_key'=> '',    //AccessKey  askey
            'secret_key'=> '',   //SecretKey   skkey
            'bucket'    => '1803a',    //Bucket名字
        ],

如果上传较大的文件需要修改php.ini 中的

最大限制100M

post_max_size = 100M

以及
upload_max_filesize = 100M

 修改php study中的扩展文件中的参数值设置

这里是修改上传时间,因为正常上传文件超过30秒会失败,这里调整大小为防止文件过大

max_execution_time 中的数值 
以及
max_input_time 中的值

 

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值