class DateTimeFormatterStrategy in Zircon Profile 8
Same name in this branch
- 8 vendor/zendframework/zend-hydrator/src/Strategy/DateTimeFormatterStrategy.php \Zend\Hydrator\Strategy\DateTimeFormatterStrategy
- 8 vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/DateTimeFormatterStrategy.php \Zend\Stdlib\Hydrator\Strategy\DateTimeFormatterStrategy
Same name and namespace in other branches
- 8.0 vendor/zendframework/zend-hydrator/src/Strategy/DateTimeFormatterStrategy.php \Zend\Hydrator\Strategy\DateTimeFormatterStrategy
Hierarchy
- class \Zend\Hydrator\Strategy\DateTimeFormatterStrategy implements StrategyInterface
Expanded class hierarchy of DateTimeFormatterStrategy
1 file declares its use of DateTimeFormatterStrategy
- DateTimeFormatterStrategy.php in vendor/
zendframework/ zend-stdlib/ src/ Hydrator/ Strategy/ DateTimeFormatterStrategy.php
File
- vendor/
zendframework/ zend-hydrator/ src/ Strategy/ DateTimeFormatterStrategy.php, line 15
Namespace
Zend\Hydrator\StrategyView source
class DateTimeFormatterStrategy implements StrategyInterface {
/**
* @var string
*/
private $format;
/**
* @var DateTimeZone|null
*/
private $timezone;
/**
* Constructor
*
* @param string $format
* @param DateTimeZone|null $timezone
*/
public function __construct($format = DateTime::RFC3339, DateTimeZone $timezone = null) {
$this->format = (string) $format;
$this->timezone = $timezone;
}
/**
* {@inheritDoc}
*
* Converts to date time string
*
* @param mixed|DateTime $value
*
* @return mixed|string
*/
public function extract($value) {
if ($value instanceof DateTime) {
return $value
->format($this->format);
}
return $value;
}
/**
* Converts date time string to DateTime instance for injecting to object
*
* {@inheritDoc}
*
* @param mixed|string $value
*
* @return mixed|DateTime
*/
public function hydrate($value) {
if ($value === '' || $value === null) {
return;
}
if ($this->timezone) {
$hydrated = DateTime::createFromFormat($this->format, $value, $this->timezone);
}
else {
$hydrated = DateTime::createFromFormat($this->format, $value);
}
return $hydrated ?: $value;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DateTimeFormatterStrategy:: |
private | property | ||
DateTimeFormatterStrategy:: |
private | property | ||
DateTimeFormatterStrategy:: |
public | function |
Converts to date time string Overrides StrategyInterface:: |
|
DateTimeFormatterStrategy:: |
public | function |
Converts date time string to DateTime instance for injecting to object Overrides StrategyInterface:: |
|
DateTimeFormatterStrategy:: |
public | function | Constructor |