七牛多文件压缩是否可以生成文件夹?

七牛多文件压缩 (mkzip),可以指定别名,如果要生成文件夹该如何命名?
现在如果指定别名,解压缩后的文件名为http/,请问是什么规则?

阅读 3.6k
2 个回答

已经解决了,分享一下解决办法

/**
    $sourceArray 资源数组 
    $packageName 压缩包文件名
*/    
public function compress(Array $sourceArray,$packageName,$callbackUrl='')
    {
        $bucket = '空间名';
        $fops = 'mkzip/2';//七牛的压缩处理命令
        /**
            $sourceArray 是一个数组,结构为:
            [
                '0' => [
                    'key' => 'http://source.qiniu.cn/test.txt',
                    'alias' => 'alias.txt',//别名 可空,空则为源文件名,如要创建文件夹则命名为 文件夹名/文件名        
                ]
            ]
        */
        foreach ($sourceArray as $k => $source) {
            $Base64EncodedURL = $this->base64_urlSafeEncode($source['key']);
            $Base64AliasEncodedURL = $this->base64_urlSafeEncode($source['alias']);
            $fops .= '/url/'.$Base64EncodedURL;
            if(!empty($source['alias'])){
                $fops .= '/alias/'.$Base64AliasEncodedURL;
            }
        }
        $fops .= '|saveas/'.$this->saveasEnocde($packageName); 
        /** test.txt 必须为一个空间中存在的文件名,但目前无实际意义 */
        $res = $this->persistentOps('test.txt',$bucket,$fops,$callbackUrl,false);
        echo $res;
    }  

详细描述

指定别名解压后是 http/ 是什么意思呢?只要指定别名的文件文件名都是这个吗?可以把 persistentid 通过 support.qiniu.com 提交个工单给七牛。
生成文件夹应该是不支持的。

logo
七牛云问答
子站问答
访问
宣传栏