fengshun94 2022-01-11 20:00 采纳率: 0%
浏览 55

PHP Laravel Excel 怎么能在后台把生成的文件直接保存到OSS服务器上

现在需要弄个定时器定时去查表然后自动把生成的Excel文件保存到OSS服务器上边,要怎么弄啊

  • 写回答

1条回答 默认 最新

  • 向宇it 全栈领域优质创作者 2022-10-31 16:23
    关注

    可以先生成,再上传就好了
    这里有个demo你可以看看,记得修改配置文件

        /**
         * 本地文件上传OSS
         * @param Request $request
         * @return bool|IlluminateHttpJsonResponse
         */
        public function localLoadFile(Request $request)
        {
            if ($request->hasFile('file')) {
                if ($request->file('file')->isValid()) {
                    // 上传文件
                    $path = 'contract' . DIRECTORY_SEPARATOR . date('Y') . DIRECTORY_SEPARATOR . date('m') . DIRECTORY_SEPARATOR . date('d');
                    //上传到oss
                    $image_path = upload_image($path, $request->file('file'), 'oss');
                    if ($image_path) {
                        return $image_path;
                    } else {
                        return false;
                    }
                }
            }
            return Helper::jsonErrorData(ApiErr::UPLOAD_ERR);
        }
    
        /**
         * curl上传本地文件到OSS
         * @param $path
         * @return array|bool|string
         */
        public function localFile($path)
        {
            $data = [
                'file' => new CURLFile(realpath($path))
            ];
    
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, route('api.esign.testLoadFile'));//此处以当前服务器为接收地址
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_TIMEOUT, 10);//设置最长等待时间
            curl_setopt($ch, CURLOPT_POST, 1);//post提交
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    
            $data = curl_exec($ch);//执行
            if (curl_errno($ch)) {
                return curl_error($ch);
            }
            curl_close($ch);//释放
    
            return $data;
        }
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 1月11日

悬赏问题

  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作