佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > PHP sdk實(shí)現(xiàn)在線打包代碼示例

PHP sdk實(shí)現(xiàn)在線打包代碼示例

熱門(mén)標(biāo)簽:服務(wù)器配置 團(tuán)購(gòu)網(wǎng)站 銀行業(yè)務(wù) Linux服務(wù)器 科大訊飛語(yǔ)音識(shí)別系統(tǒng) 電子圍欄 Mysql連接數(shù)設(shè)置 阿里云

如果需要將空間中的多個(gè)文件,打包成一個(gè)壓縮文件,該怎么做,不需要自己本地打包好再上傳,七牛已經(jīng)為我們提供了這項(xiàng)服務(wù)。

命令:mkzip/2/url/xx/alias/xxx;

不僅可以將文件打包,還可以將打包內(nèi)容按文件夾進(jìn)行劃分,如test.zip 解壓后為文件夾T1和T2,文件夾中再是具體的文件,改如何做,主要就在alias命名上了,alias只要命名為文件夾/文件名的形式就可以了。

所以如果我們有多個(gè)類(lèi)型的多個(gè)文件,可以封裝一個(gè)方法,傳遞給他一個(gè)原文件名和別名的數(shù)組就可以了。然后方法就是遍歷數(shù)組對(duì)pfop命令進(jìn)行多個(gè)url與alias的拼接。

/**
 * 七牛資源壓縮
 * @param $packageName 打包后的資源名
 * @param Array $sourceArray 資源數(shù)組 
 * [
 *   [
 *     'key' => 'http://source.domain.cn/test1.ppt',
 *     'alias' => 'alias1.ppt',//別名 可空,空則為源文件名,如要?jiǎng)?chuàng)建文件夾則命名為 文件夾名/文件名
 *   ],
 *   [
 *     'key' => 'http://source.domain.cn/test2.ppt',
 *     'alias' => 'alias2.ppt'
 *   ],
 * ]
 */
public function compress(Array $sourceArray,$packageName,$callbackUrl='')
 {
   $bucket = $this->bucket_for_image;
   $fops = 'mkzip/2';
   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); 
   $res = $this->persistentOps('test.txt',$bucket,$fops,$callbackUrl,false);
   echo $res;
 }

需要注意的一點(diǎn)是,調(diào)用persistentOps的時(shí)候,第一個(gè)參數(shù)必須為bucket內(nèi)一個(gè)有效存在的資源的名稱(chēng),沒(méi)有實(shí)際作用,但必須指定。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Thinkphp集成抖音SDK的實(shí)現(xiàn)方法
  • 微信sdk實(shí)現(xiàn)禁止微信分享(使用原生php實(shí)現(xiàn))
  • PHP如何實(shí)現(xiàn)阿里云短信sdk靈活應(yīng)用在項(xiàng)目中的方法
  • PHP實(shí)現(xiàn)微信支付(jsapi支付)和退款(無(wú)需集成支付SDK)流程教程詳解
  • thinkPHP微信分享接口JSSDK用法實(shí)例
  • thinkPHP簡(jiǎn)單導(dǎo)入和使用阿里云OSSsdk的方法
  • php一個(gè)文件搞定微信jssdk配置
  • PHP實(shí)現(xiàn)微信JS-SDK接口選擇相冊(cè)及拍照并上傳的方法
  • 微信支付PHP SDK之微信公眾號(hào)支付代碼詳解
  • 微信公眾平臺(tái)開(kāi)發(fā)接口PHP SDK完整版

標(biāo)簽:江蘇 衡水 萍鄉(xiāng) 蚌埠 大理 棗莊 衢州 廣元

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP sdk實(shí)現(xiàn)在線打包代碼示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢(xún)

    • 400-1100-266
    夏邑县| 永修县| 临夏县| 房产| 万州区| 获嘉县| 庆云县| 将乐县| 碌曲县| 宜都市| 永宁县| 枣阳市| 蒙自县| 宣城市| 永清县| 湖南省| 金川县| 徐汇区| 方城县| 朝阳市| 临安市| 广东省| 沙湾县| 汽车| 浮山县| 北辰区| 若羌县| 县级市| 奉节县| 普兰县| 屏东市| 岚皋县| 华安县| 乐都县| 年辖:市辖区| 丰都县| 浦县| 波密县| 新绛县| 虹口区| 林州市|