SDK for PHP 3.x

BatchDelete
in package
implements PromisorInterface

Efficiently deletes many objects from a single Amazon S3 bucket using an iterator that yields keys. Deletes are made using the DeleteObjects API operation.

$s3 = new Aws\S3\Client([ 'region' => 'us-west-2', 'version' => 'latest' ]);

$listObjectsParams = ['Bucket' => 'foo', 'Prefix' => 'starts/with/'];
$delete = Aws\S3\BatchDelete::fromListObjects($s3, $listObjectsParams);
// Asynchronously delete
$promise = $delete->promise();
// Force synchronous completion
$delete->delete();

When using one of the batch delete creational static methods, you can supply an associative array of options:

  • before: Function invoked before executing a command. The function is passed the command that is about to be executed. This can be useful for logging, adding custom request headers, etc.
  • batch_size: The size of each delete batch. Defaults to 1000.
Tags
link
http://docs.aws.amazon.com/AmazonS3/latest/API/multiobjectdeleteapi.html

Table of Contents

Interfaces

PromisorInterface
Interface used with classes that return a promise.

Methods

delete()  : mixed
Synchronously deletes all of the objects.
fromIterator()  : BatchDelete
Creates a BatchDelete object from an iterator that yields results.
fromListObjects()  : BatchDelete
Creates a BatchDelete object from all of the paginated results of a ListObjects operation. Each result that is returned by the ListObjects operation will be deleted.
promise()  : PromiseInterface
Returns a promise.

Methods

fromIterator()

Creates a BatchDelete object from an iterator that yields results.

public static fromIterator(AwsClientInterface $client, string $bucket, Iterator $iter[, array<string|int, mixed> $options = [] ]) : BatchDelete
Parameters
$client : AwsClientInterface

AWS Client to use to execute commands

$bucket : string

Bucket where the objects are stored

$iter : Iterator

Iterator that yields assoc arrays

$options : array<string|int, mixed> = []

BatchDelete options

Return values
BatchDelete

fromListObjects()

Creates a BatchDelete object from all of the paginated results of a ListObjects operation. Each result that is returned by the ListObjects operation will be deleted.

public static fromListObjects(AwsClientInterface $client, array<string|int, mixed> $listObjectsParams[, array<string|int, mixed> $options = [] ]) : BatchDelete
Parameters
$client : AwsClientInterface

AWS Client to use.

$listObjectsParams : array<string|int, mixed>

ListObjects API parameters

$options : array<string|int, mixed> = []

BatchDelete options.

Return values
BatchDelete
On this page