NOTE: For Version 3 of the AWS SDK for PHP, please see the V3 User Guide and V3 API Reference.

# Class AbstractSignature

Interface used to provide interchangeable strategies for signing requests using the various AWS signature protocols.

  Aws\Common\Signature\AbstractSignature implements Aws\Common\Signature\SignatureInterface

### Direct known subclasses

`Aws\CloudFront\CloudFrontSignature`, `Aws\Common\Signature\SignatureV2`, `Aws\Common\Signature\SignatureV3Https`, `Aws\Common\Signature\SignatureV4`

### Indirect known subclasses

`Aws\S3\S3SignatureV4`

Abstract
Namespace: Aws\Common\Signature
Located at Aws/Common/Signature/AbstractSignature.php

## Methods summary

- `protected` `getTimestamp ( )`

  Provides the timestamp used for the class (used for mocking PHP's time() function)

- `public` `createPresignedUrl ( Guzzle\Http\Message\RequestInterface $request, Aws\Common\Credentials\CredentialsInterface $credentials, int|string|\DateTime $expires )`

## Methods detail

# `protected integer`
`getTimestamp( )`

Provides the timestamp used for the class (used for mocking PHP's time() function)

#### Returns

`integer`
# `public string`
`createPresignedUrl( `Guzzle\Http\Message\RequestInterface` $request, `Aws\Common\Credentials\CredentialsInterface` $credentials, integer|string|`DateTime` $expires )`

#### Parameters

$request
  ``Guzzle\Http\Message\RequestInterface``
  $request Request to sign
$credentials
  ``Aws\Common\Credentials\CredentialsInterface``
  $credentials Credentials used to sign
$expires
  `integer|string|`DateTime``
  $expires The time at which the URL should expire. This can be a Unix timestamp, a PHP DateTime object, or a string that can be evaluated by strtotime

#### Returns

`string`

#### CodeCoverageIgnore

#### Implementation of

`Aws\Common\Signature\SignatureInterface::createPresignedUrl()`

### Methods inherited from Aws\Common\Signature\SignatureInterface

`signRequest()`

### Magic methods summary