uploadBase64Img($imageFile, $imageName); $disk = Storage::disk('qiniu'); try { $re = $disk->put($imageName, $imageFile); // dd($re); return $re; } catch (\Exception $exception) { throw new ApiException('上传图片失败:' . $exception->getMessage()); } } /** * 上传单文件 */ public function uploadSingleFile($file, $fileName = '') { $disk = Storage::disk('qiniu'); try { $re = $disk->put($fileName, $file, 'r'); return $re; } catch (\Exception $exception) { return false; } } //base64图片上传 public function uploadBase64Img($base64img, $imageName = '') { //获取图片 $file = $base64img; if (strpos($base64img, 'jpg') === 11) { $type = 'jpg'; $img = base64_decode(str_replace('data:image/jpg;base64,', '', $file)); } elseif (strpos($base64img, 'jpeg') === 11) { $type = 'jpg'; $img = base64_decode(str_replace('data:image/jpeg;base64,', '', $file)); } else { $type = 'png'; $img = base64_decode(str_replace('data:image/png;base64,', '', $file)); } $accessKey = config('filesystems.disks.qiniu.access_key'); $secretKey = config('filesystems.disks.qiniu.secret_key'); $bucket = config('filesystems.disks.qiniu.bucket'); // 构建鉴权对象 $auth = new Auth($accessKey, $secretKey); // 生成上传 Token $token = $auth->uploadToken($bucket); if (!$imageName) { $key = time() . rand(0, 9999) . '.' . $type; } else { $key = $imageName . '/' . time() . rand(0, 9999) . '.' . $type; } $uploadMgr = new UploadManager(); list($ret, $err) = $uploadMgr->put($token, $key, $img); if ($ret) { //这里返回的是一个bucket的域名,在前面添加http://后就可以正常看到图片 return $key; } else { throw new ApiException('上传图片失败', 40001); } } //除图片之外的文件上传 public function upload($file, $fileName = '') { $accessKey = config('filesystems.disks.qiniu.access_key'); $secretKey = config('filesystems.disks.qiniu.secret_key'); $bucket = config('filesystems.disks.qiniu.bucket'); // 构建鉴权对象 $auth = new Auth($accessKey, $secretKey); // 生成上传 Token $token = $auth->uploadToken($bucket); // 要上传文件的本地路径 $filePath = $file; // 上传到七牛后保存的文件名 $key = $fileName; // 初始化 UploadManager 对象并进行文件的上传。 $uploadMgr = new UploadManager(); // 调用 UploadManager 的 putFile 方法进行文件的上传。 list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath); // echo "\n====> putFile result: \n"; if ($err !== null) { return false; //dd($err); } else { return $ret['key']; } } public function checkFileExists($fileName) { $disk = Storage::disk('qiniu'); $re = $disk->exists($fileName); dd($re); } /** * 获取图片的Base64编码(不支持url) * @date 2017-02-20 19:41:22 * * @param $img_file 传入本地图片地址 * * @return string */ function imgToBase64($img_file) { if (file_exists($img_file)) { $app_img_file = $img_file; // 图片路径 $img_info = getimagesize($app_img_file); // 取得图片的大小,类型等 //echo '
' . print_r($img_info, true) . '