php S3 PHP SDK提供Bucket生命周期配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php S3 PHP SDK提供Bucket生命周期配置相关的知识,希望对你有一定的参考价值。

$result = $client->putBucketLifecycleConfiguration([
    'Bucket' => '<string>', // REQUIRED
    'LifecycleConfiguration' => [
        'Rules' => [ // REQUIRED
            [
                'AbortIncompleteMultipartUpload' => [
                    // Days since initiation of Multipart Upload that Lifecycle will wait before permanently removing all parts of the upload
                    'DaysAfterInitiation' => <integer>,
                ],
                'Expiration' => [
                    // Indicates at what date the object is to be moved or deleted. Should be in GMT ISO 8601 Format.
                    'Date' => <integer || string || DateTime>,
                    // Indicates the lifetime, in days, of the objects that are subject to the rule. The value must be a non-zero positive integer.
                    'Days' => <integer>,
                    // Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions. If set to true, the delete marker will be expired; if set to false the policy takes no action. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
                    'ExpiredObjectDeleteMarker' => true || false,
                ],
                // The Filter is used to identify objects that a Lifecycle Rule applies to. A Filter must have exactly one of Prefix, Tag, or And specified.
                'Filter' => [
                    // This is used in a Lifecycle Rule Filter to apply a logical AND to two or more predicates. The Lifecycle Rule will apply to any object matching all of the predicates configured inside the And operator.
                    'And' => [
                        'Prefix' => '<string>',
                        // All of these tags must exist in the object's tag set in order for the rule to apply.
                        'Tags' => [
                            [
                                // Name of the tag.
                                'Key' => '<string>', // REQUIRED
                                // Value of the tag.
                                'Value' => '<string>', // REQUIRED
                            ],
                            // ...
                        ],
                    ],
                    // Prefix identifying one or more objects to which the rule applies.
                    'Prefix' => '<string>',
                    // This tag must exist in the object's tag set in order for the rule to apply.
                    'Tag' => [
                        // Name of the tag.
                        'Key' => '<string>', // REQUIRED
                        // Value of the tag.
                        'Value' => '<string>', // REQUIRED
                    ],
                ],
                // Unique identifier for the rule. The value cannot be longer than 255 characters.
                'ID' => '<string>',
                // Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.
                'NoncurrentVersionExpiration' => [
                    // Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action.
                    'NoncurrentDays' => <integer>,
                ],
                // Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA or GLACIER storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA or GLACIER storage class at a specific period in the object's lifetime.
                'NoncurrentVersionTransitions' => [
                    [
                        // Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action.
                        'NoncurrentDays' => <integer>,
                        // The class of storage used to store the object.
                        'StorageClass' => 'GLACIER|STANDARD_IA',
                    ],
                    // ...
                ],
                // Prefix identifying one or more objects to which the rule applies. This is deprecated; use Filter instead.
                'Prefix' => '<string>',
                // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being applied.
                'Status' => 'Enabled|Disabled', // REQUIRED
                'Transitions' => [
                    [
                        // Indicates at what date the object is to be moved or deleted. Should be in GMT ISO 8601 Format.
                        'Date' => <integer || string || DateTime>,
                        // Indicates the lifetime, in days, of the objects that are subject to the rule. The value must be a non-zero positive integer.
                        'Days' => <integer>,
                        // The class of storage used to store the object.
                        'StorageClass' => 'GLACIER|STANDARD_IA',
                    ],
                    // ...
                ],
            ],
            // ...
        ],
    ],
]);

以上是关于php S3 PHP SDK提供Bucket生命周期配置的主要内容,如果未能解决你的问题,请参考以下文章

百度的Ueditor(php)上传到aws s3存储方案

百度的Ueditor(php)上传到aws s3存储方案

代码点火器和S3

php S3调用SDK示例 AmazonS3

创建 S3Client 的 PHP AWS SDK 致命错误

当在PHP上使用带有IP的getIterator时,AWS S3Client解析错误的URL