AutorÃa | Ultima modificación | Ver Log |
<?phpnamespace 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 \DateTimeInterface) {$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);}}}