Service/Amazon/S3.php

Show: PublicProtectedPrivateinherited
Table of Contents
Zend Framework
LICENSE This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to [email protected] so we can send you a copy immediately.
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Service  
Subpackage
Amazon_S3  
Version
$Id$  

\Zend_Service_Amazon_S3

Package: Zend_Service\Amazon_S3
Amazon S3 PHP connection class
Parent(s)
\Zend_Service_Amazon_Abstract < \Zend_Service_Abstract
See
 
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  

Constants

>VConstant  S3_ENDPOINT = 's3.amazonaws.com'
>VConstant  S3_ACL_PRIVATE = 'private'
>VConstant  S3_ACL_PUBLIC_READ = 'public-read'
>VConstant  S3_ACL_PUBLIC_WRITE = 'public-read-write'
>VConstant  S3_ACL_AUTH_READ = 'authenticated-read'
>VConstant  S3_REQUESTPAY_HEADER = 'x-amz-request-payer'
>VConstant  S3_ACL_HEADER = 'x-amz-acl'
>VConstant  S3_CONTENT_TYPE_HEADER = 'Content-Type'

Properties

>VPropertyprotected\Zend_Uri_Http $_endpoint
Endpoint for the service
Details
Type
\Zend_Uri_Http
>VPropertyprotectedarray $_wrapperClients = array()
static
Store for stream wrapper clients
Default valuearray()Details
Type
array

Methods

methodpublic__construct(string $accessKey = null, string $secretKey = null, string $region = null) : void

Constructor

Parameters
NameTypeDescription
$accessKeystring
$secretKeystring
$regionstring
methodprotected_fixupObjectName(string $object) : string

Make sure the object name is valid

Parameters
NameTypeDescription
$objectstring
Returns
TypeDescription
string
methodpublic_makeRequest(string $method, string $path = '', array $params = null, array $headers = array(), string | resource $data = null) : \Zend_Http_Response

Make a request to Amazon S3

Parameters
NameTypeDescription
$methodstring

Request method

$pathstring

Path to requested object

$paramsarray

Request parameters

$headersarray

HTTP headers

$datastring | resource

Request data

Returns
TypeDescription
\Zend_Http_Response
methodpublic_validBucketName(string $bucket) : boolean

Verify if the bucket name is valid

Parameters
NameTypeDescription
$bucketstring
Returns
TypeDescription
boolean
methodprotectedaddSignature(string $method, string $path,  $headers) : string

Add the S3 Authorization signature to the request headers

Parameters
NameTypeDescription
$methodstring
$pathstring
$headers
Returns
TypeDescription
string
methodpubliccleanBucket(string $bucket) : boolean

Remove all objects in the bucket.

Parameters
NameTypeDescription
$bucketstring
Returns
TypeDescription
boolean
methodpubliccopyObject(string $sourceObject, string $destObject, array $meta = null) : boolean

Copy an object

Parameters
NameTypeDescription
$sourceObjectstring

Source object name

$destObjectstring

Destination object name

$metaarray

(OPTIONAL) Metadata to apply to desination object.

                          Set to null to copy metadata from source object.
Returns
TypeDescription
boolean
methodpubliccreateBucket(string $bucket,  $location = null) : boolean

Add a new bucket

Parameters
NameTypeDescription
$bucketstring
$location
Returns
TypeDescription
boolean
methodpublicgetBuckets() : array | false

List the S3 buckets

Returns
TypeDescription
array | false
methodpublicgetEndpoint() : \Zend_Uri_Http

Get current S3 endpoint

Returns
TypeDescription
\Zend_Uri_Http
methodpublicgetInfo(string $object) : array | false

Get metadata information for a given object

Parameters
NameTypeDescription
$objectstring
Returns
TypeDescription
array | false
methodpublicgetMimeType(string $path) : string
static

Attempt to get the content-type of a file based on the extension

Parameters
NameTypeDescription
$pathstring
Returns
TypeDescription
string
methodpublicgetObject(string $object, bool $paidobject = false) : string | false

Get an object

Parameters
NameTypeDescription
$objectstring
$paidobjectbool

This is "requestor pays" object

Returns
TypeDescription
string | false
methodpublicgetObjectStream(string $object, string $streamfile = null, bool $paidobject = false) : \Zend_Http_Response_Stream | false

Get an object using streaming

Can use either provided filename for storage or create a temp file if none provided.
Parameters
NameTypeDescription
$objectstring

Object path

$streamfilestring

File to write the stream to

$paidobjectbool

This is "requestor pays" object

Returns
TypeDescription
\Zend_Http_Response_Stream | false
methodpublicgetObjectsAndPrefixesByBucket(string $bucket, array $params = array()) : array | false

List the objects and common prefixes in a bucket.

Provides the list of object keys and common prefixes that are contained in the bucket. Valid params include the following. prefix - Limits the response to keys which begin with the indicated prefix. You can use prefixes to separate a bucket into different sets of keys in a way similar to how a file system uses folders. marker - Indicates where in the bucket to begin listing. The list will only include keys that occur lexicographically after marker. This is convenient for pagination: To get the next page of results use the last key of the current page as the marker. max-keys - The maximum number of keys you'd like to see in the response body. The server might return fewer than this many keys, but will not return more. delimiter - Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response.
Parameters
NameTypeDescription
$bucketstring
$paramsarray

S3 GET Bucket Paramater

Returns
TypeDescription
array | false
Details
See
 
methodpublicgetObjectsByBucket(string $bucket, array $params = array()) : array | false

List the objects in a bucket.

Provides the list of object keys that are contained in the bucket. Valid params include the following. prefix - Limits the response to keys which begin with the indicated prefix. You can use prefixes to separate a bucket into different sets of keys in a way similar to how a file system uses folders. marker - Indicates where in the bucket to begin listing. The list will only include keys that occur lexicographically after marker. This is convenient for pagination: To get the next page of results use the last key of the current page as the marker. max-keys - The maximum number of keys you'd like to see in the response body. The server might return fewer than this many keys, but will not return more. delimiter - Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response.
Parameters
NameTypeDescription
$bucketstring
$paramsarray

S3 GET Bucket Paramater

Returns
TypeDescription
array | false
methodpublicgetWrapperClient(string $name) : \Zend_Service_Amazon_S3
static

Get wrapper client for stream type

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
\Zend_Service_Amazon_S3
methodpublicisBucketAvailable(string $bucket) : boolean

Checks if a given bucket name is available

Parameters
NameTypeDescription
$bucketstring
Returns
TypeDescription
boolean
methodpublicisObjectAvailable(string $object) : boolean

Checks if a given object exists

Parameters
NameTypeDescription
$objectstring
Returns
TypeDescription
boolean
methodpublicmoveObject(string $sourceObject, string $destObject, array $meta = null) : void

Move an object

Performs a copy to dest + verify + remove source
Parameters
NameTypeDescription
$sourceObjectstring

Source object name

$destObjectstring

Destination object name

$metaarray

(OPTIONAL) Metadata to apply to destination object.

                         Set to null to retain existing metadata.
methodpublicputFile(string $path, string $object, array $meta = null) : boolean

Put file to S3 as object

Parameters
NameTypeDescription
$pathstring

File name

$objectstring

Object name

$metaarray

Metadata

Returns
TypeDescription
boolean
methodpublicputFileStream(string $path, string $object, array $meta = null) : boolean

Put file to S3 as object, using streaming

Parameters
NameTypeDescription
$pathstring

File name

$objectstring

Object name

$metaarray

Metadata

Returns
TypeDescription
boolean
methodpublicputObject(string $object, string | resource $data, array $meta = null) : boolean

Upload an object by a PHP string

Parameters
NameTypeDescription
$objectstring

Object name

$datastring | resource

Object data (can be string or stream)

$metaarray

Metadata

Returns
TypeDescription
boolean
methodpublicregisterAsClient(string $name) : \Zend_Service_Amazon_S3

Register this object as stream wrapper client

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
\Zend_Service_Amazon_S3
methodpublicregisterStreamWrapper(string $name = 's3') : \Zend_Service_Amazon_S3

Register this object as stream wrapper

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
\Zend_Service_Amazon_S3
methodpublicremoveBucket(string $bucket) : boolean

Remove a given bucket. All objects in the bucket must be removed prior to removing the bucket.

Parameters
NameTypeDescription
$bucketstring
Returns
TypeDescription
boolean
methodpublicremoveObject(string $object) : boolean

Remove a given object

Parameters
NameTypeDescription
$objectstring
Returns
TypeDescription
boolean
methodpublicsetEndpoint(string | \Zend_Uri_Http $endpoint) : \Zend_Service_Amazon_S3

Set S3 endpoint to use

Parameters
NameTypeDescription
$endpointstring | \Zend_Uri_Http
Returns
TypeDescription
\Zend_Service_Amazon_S3
methodpublicunregisterAsClient(string $name) : \Zend_Service_Amazon_S3

Unregister this object as stream wrapper client

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
\Zend_Service_Amazon_S3
methodpublicunregisterStreamWrapper(string $name = 's3') : \Zend_Service_Amazon_S3

Unregister this object as stream wrapper

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
\Zend_Service_Amazon_S3
Documentation was generated by phpDocumentor 2.2.0 .