Documentation

ObjectUploader
in package
implements PromisorInterface

Uploads an object to S3, using a PutObject command or a multipart upload as appropriate.

Interfaces, Classes and Traits

PromisorInterface
Interface used with classes that return a promise.

Table of Contents

DEFAULT_MULTIPART_THRESHOLD  = 16777216
$acl  : mixed
$body  : mixed
$bucket  : mixed
$client  : mixed
$defaults  : mixed
$key  : mixed
$options  : mixed
__construct()  : mixed
promise()  : PromiseInterface
Returns a promise.
upload()  : mixed
requiresMultipart()  : bool
Determines if the body should be uploaded using PutObject or the Multipart Upload System. It also modifies the passed-in $body as needed to support the upload.

Constants

DEFAULT_MULTIPART_THRESHOLD

public mixed DEFAULT_MULTIPART_THRESHOLD = 16777216

Properties

$defaults

private static mixed $defaults = ['before_upload' => null, 'concurrency' => 3, 'mup_threshold' => self::DEFAULT_MULTIPART_THRESHOLD, 'params' => [], 'part_size' => null]

Methods

__construct()

public __construct(S3ClientInterface $client, string $bucket, string $key, mixed $body[, string $acl = 'private' ][, array<string|int, mixed> $options = [] ]) : mixed
Parameters
$client : S3ClientInterface

The S3 Client used to execute the upload command(s).

$bucket : string

Bucket to upload the object, or an S3 access point ARN.

$key : string

Key of the object.

$body : mixed

Object data to upload. Can be a StreamInterface, PHP stream resource, or a string of data to upload.

$acl : string = 'private'

ACL to apply to the copy (default: private).

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

Options used to configure the copy process. Options passed in through 'params' are added to the sub command(s).

Return values
mixed —

requiresMultipart()

Determines if the body should be uploaded using PutObject or the Multipart Upload System. It also modifies the passed-in $body as needed to support the upload.

private requiresMultipart(StreamInterface &$body, int $threshold) : bool
Parameters
$body : StreamInterface

Stream representing the body.

$threshold : int

Minimum bytes before using Multipart.

Return values
bool —

Search results