朱森博其实一直在想你 发布于 2017-05-17 00:19

阿里云OSS提供了有两种上传文件的方式。

//通过multipart上传文件
function upload_by_multi_part($obj){
    $bucket = 'phpsdk1349849394';
    $object = 'Mining.the.Social.Web-'.time().'.pdf';  //英文
    $filepath = "D:\\Book\\Mining.the.Social.Web.pdf";  //英文

    $options = array(
        ALIOSS::OSS_FILE_UPLOAD => $filepath,
        'partSize' => 5242880,
    );

    $response = $obj->create_mpu_object($bucket, $object,$options);
    _format($response);
}

//通过multipart上传整个目录
function upload_by_dir($obj){
    $bucket = 'phpsdk1349849394';
    $dir = "D:\\alidata\\www\\logs\\aliyun.com\\oss\\";
    $recursive = false;

    $response = $obj->create_mtu_object_by_dir($bucket,$dir,$recursive);
    var_dump($response);    
}

有两种方案:
1.一种是上传一个单个文件,当服务器收到N个文件,通过第一个函数分N次上传。
2.第二种是我把多个文件从临时目录转移到一个临时文件下,通过第二个函数,一次性上传!但是觉得这样很麻烦,既要创建一个新的文件夹,保存上传的文件,上传结束以后还要做删除。
这两种那种好?如果第二种好,能直接在上传的时候就直接给N个临时文件一个独有的临时目录么?

1 个回答
  • 还没考虑上传失败的处理。
    第一种方案可以上传一个标记一个,第二种方案上传失败了是全部重来还是其他?

    另:没看到第二种方案的优势在哪里。如果不是打包上传,第二种方案跟第一种有何区别?

    综上,第一种方案比较稳;第二种方案要考虑的太多,也没有带来多少便利,得不偿失。

    2017-05-17 23:51 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
活跃用户
  • 1
    问道摩托
  • 2
    袁广龙976丶
  • 3
    逍遥子
  • 4
    亮仔
  • 5
    芙蓉花
  • 6
    作小die_syj
  • 7
    王丽珠景平怡伦_621
  • 8
    adfa3sd5f6a
  • 9
    欣欣大妮
  • 10
    sfasfs
PHP1.CN | 中国最专业的PHP中文社区 | json解析格式化 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有