@@ -203,14 +203,20 @@ public function listFilesv2(
203203 * 大于0表示多少天后删除,需大于 to_line_after_days
204204 * @param int $to_line_after_days 指定文件上传多少天后转低频存储。指定为0表示
205205 * 不转低频存储,小于0表示上传的文件立即变低频存储
206+ * @param int $to_archive_after_days 指定文件上传多少天后转归档存储。指定为0表示
207+ * 不转归档存储,小于0表示上传的文件立即变归档存储
208+ * @param int $to_deep_archive_after_days 指定文件上传多少天后转深度归档存储。指定为0表示
209+ * 不转深度归档存储,小于0表示上传的文件立即变深度归档存储
206210 * @return array
207211 */
208212 public function bucketLifecycleRule (
209213 $ bucket ,
210214 $ name ,
211215 $ prefix ,
212- $ delete_after_days ,
213- $ to_line_after_days
216+ $ delete_after_days = null ,
217+ $ to_line_after_days = null ,
218+ $ to_archive_after_days = null ,
219+ $ to_deep_archive_after_days = null
214220 ) {
215221 $ path = '/rules/add ' ;
216222 $ params = array ();
@@ -229,6 +235,12 @@ public function bucketLifecycleRule(
229235 if ($ to_line_after_days ) {
230236 $ params ['to_line_after_days ' ] = $ to_line_after_days ;
231237 }
238+ if ($ to_archive_after_days ) {
239+ $ params ['to_archive_after_days ' ] = $ to_archive_after_days ;
240+ }
241+ if ($ to_deep_archive_after_days ) {
242+ $ params ['to_deep_archive_after_days ' ] = $ to_deep_archive_after_days ;
243+ }
232244 $ data = http_build_query ($ params );
233245 $ info = $ this ->ucPost ($ path , $ data );
234246 return $ info ;
@@ -245,14 +257,20 @@ public function bucketLifecycleRule(
245257 * 大于0表示多少天后删除,需大于 to_line_after_days
246258 * @param int $to_line_after_days 指定文件上传多少天后转低频存储。指定为0表示不
247259 * 转低频存储,小于0表示上传的文件立即变低频存储
260+ * @param int $to_archive_after_days 指定文件上传多少天后转归档存储。指定为0表示
261+ * 不转归档存储,小于0表示上传的文件立即变归档存储
262+ * @param int $to_deep_archive_after_days 指定文件上传多少天后转深度归档存储。指定为0表示
263+ * 不转深度归档存储,小于0表示上传的文件立即变深度归档存储
248264 * @return array
249265 */
250266 public function updateBucketLifecycleRule (
251267 $ bucket ,
252268 $ name ,
253269 $ prefix ,
254- $ delete_after_days ,
255- $ to_line_after_days
270+ $ delete_after_days = null ,
271+ $ to_line_after_days = null ,
272+ $ to_archive_after_days = null ,
273+ $ to_deep_archive_after_days = null
256274 ) {
257275 $ path = '/rules/update ' ;
258276 $ params = array ();
@@ -271,6 +289,12 @@ public function updateBucketLifecycleRule(
271289 if ($ to_line_after_days ) {
272290 $ params ['to_line_after_days ' ] = $ to_line_after_days ;
273291 }
292+ if ($ to_archive_after_days ) {
293+ $ params ['to_archive_after_days ' ] = $ to_archive_after_days ;
294+ }
295+ if ($ to_deep_archive_after_days ) {
296+ $ params ['to_deep_archive_after_days ' ] = $ to_deep_archive_after_days ;
297+ }
274298 $ data = http_build_query ($ params );
275299 return $ this ->ucPost ($ path , $ data );
276300 }
@@ -675,7 +699,7 @@ public function changeMime($bucket, $key, $mime)
675699 *
676700 * @param string $bucket 待操作资源所在空间
677701 * @param string $key 待操作资源文件名
678- * @param int $fileType 0 表示标准存储;1 表示低频存储;2 表示归档存储
702+ * @param int $fileType 0 表示标准存储;1 表示低频存储;2 表示归档存储;3 表示深度归档存储
679703 *
680704 * @return array
681705 * @link https://developer.qiniu.com/kodo/api/3710/chtype
@@ -687,6 +711,23 @@ public function changeType($bucket, $key, $fileType)
687711 return $ this ->rsPost ($ path );
688712 }
689713
714+ /**
715+ * 解冻指定资源的存储类型
716+ *
717+ * @param string $bucket 待操作资源所在空间
718+ * @param string $key 待操作资源文件名
719+ * @param int $freezeAfterDays 解冻有效时长,取值范围 1~7
720+ *
721+ * @return array
722+ * @link https://developer.qiniu.com/kodo/api/6380/restore-archive
723+ */
724+ public function restoreAr ($ bucket , $ key , $ freezeAfterDays )
725+ {
726+ $ resource = \Qiniu \entry ($ bucket , $ key );
727+ $ path = '/restoreAr/ ' . $ resource . '/freezeAfterDays/ ' . $ freezeAfterDays ;
728+ return $ this ->rsPost ($ path );
729+ }
730+
690731 /**
691732 * 修改文件的存储状态,即禁用状态和启用状态间的的互相转换
692733 *
@@ -1031,6 +1072,15 @@ public static function buildBatchChangeType($bucket, $key_type_pairs)
10311072 return $ data ;
10321073 }
10331074
1075+ public static function buildBatchRestoreAr ($ bucket , $ key_restore_days_pairs )
1076+ {
1077+ $ data = array ();
1078+ foreach ($ key_restore_days_pairs as $ key => $ restore_days ) {
1079+ array_push ($ data , '/restoreAr/ ' . \Qiniu \entry ($ bucket , $ key ) . '/freezeAfterDays/ ' . $ restore_days );
1080+ }
1081+ return $ data ;
1082+ }
1083+
10341084 private static function oneKeyBatch ($ operation , $ bucket , $ keys )
10351085 {
10361086 $ data = array ();
0 commit comments