AlkantarClanX12
Current Path : /home/thanudqk/128shen.com/wp-content/plugins/w3-total-cache/lib/Aws/Aws/Api/ |
Current File : /home/thanudqk/128shen.com/wp-content/plugins/w3-total-cache/lib/Aws/Aws/Api/TimestampShape.php |
<?php namespace Aws\Api; /** * Represents a timestamp shape. */ class TimestampShape extends Shape { public function __construct(array $definition, ShapeMap $shapeMap) { $definition['type'] = 'timestamp'; parent::__construct($definition, $shapeMap); } /** * Formats a timestamp value for a service. * * @param mixed $value Value to format * @param string $format Format used to serialize the value * * @return int|string * @throws \UnexpectedValueException if the format is unknown. * @throws \InvalidArgumentException if the value is an unsupported type. */ public static function format($value, $format) { if ($value instanceof \DateTime) { $value = $value->getTimestamp(); } elseif (is_string($value)) { $value = strtotime($value); } elseif (!is_int($value)) { throw new \InvalidArgumentException('Unable to handle the provided' . ' timestamp type: ' . gettype($value)); } switch ($format) { case 'iso8601': return gmdate('Y-m-d\TH:i:s\Z', $value); case 'rfc822': return gmdate('D, d M Y H:i:s \G\M\T', $value); case 'unixTimestamp': return $value; default: throw new \UnexpectedValueException('Unknown timestamp format: ' . $format); } } }