123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- <?php
- namespace Tool\MayouTool;
- use Qiniu\Auth;
- use Qiniu\Config;
- use Qiniu\Storage\UploadManager;
- use Qiniu\Zone;
- use SplFileInfo;
- use Tool\MayouTool\Exception\FileException;
- /**
- * 上传工具类
- * Class UploadTool
- * @package Tool\MayouTool
- */
- class UploadTool
- {
- /**
- * 文件上传接口
- * @param SplFileInfo $file
- * @param string $filename
- * @return string
- * @throws FileException
- */
- public static function uploadFile(SplFileInfo $file,$filename="")
- {
- if (!$filename) {
- $filename = date('Y/m/d/h/m/s/') . rand(0, 99999);
- }
- $auth = new Auth(env("QINIU_ACCESS_KEY"), env("QINIU_SECRET_KEY"));
- $token = $auth->uploadToken(env("QINIU_BUCKET"));
- $zone = Zone::zonez0();//设置华东区
- $config = new Config($zone);
- $upload_manager = new UploadManager($config);
- list($ret, $err) = $upload_manager->putFile($token, $filename, $file->getRealPath());
- if ($err !== null) {
- throw new FileException("上传失败");
- }
- return env("QINIU_DOMAIN") . $filename;
- }
- }
|