class FormattedDateDiff in Drupal 8
Same name and namespace in other branches
- 9 core/lib/Drupal/Core/Datetime/FormattedDateDiff.php \Drupal\Core\Datetime\FormattedDateDiff
- 10 core/lib/Drupal/Core/Datetime/FormattedDateDiff.php \Drupal\Core\Datetime\FormattedDateDiff
Contains a formatted time difference.
Hierarchy
- class \Drupal\Core\Datetime\FormattedDateDiff implements CacheableDependencyInterface, RenderableInterface uses UnchangingCacheableDependencyTrait
Expanded class hierarchy of FormattedDateDiff
1 file declares its use of FormattedDateDiff
- DateTest.php in core/
tests/ Drupal/ Tests/ Core/ Datetime/ DateTest.php
File
- core/
lib/ Drupal/ Core/ Datetime/ FormattedDateDiff.php, line 12
Namespace
Drupal\Core\DatetimeView source
class FormattedDateDiff implements RenderableInterface, CacheableDependencyInterface {
use UnchangingCacheableDependencyTrait;
/**
* The actual formatted time difference.
*
* @var string
*/
protected $string;
/**
* The maximum time in seconds that this string may be cached.
*
* Let's say the time difference is 1 day 1 hour. In this case, we can cache
* it until now + 1 hour, so maxAge is 3600 seconds.
*
* @var int
*/
protected $maxAge;
/**
* Creates a new FormattedDateDiff instance.
*
* @param string $string
* The formatted time difference.
* @param int $max_age
* The maximum time in seconds that this string may be cached.
*/
public function __construct($string, $max_age) {
$this->string = $string;
$this->maxAge = $max_age;
}
/**
* @return string
*/
public function getString() {
return $this->string;
}
/**
* {@inheritdoc}
*/
public function getCacheMaxAge() {
return $this->maxAge;
}
/**
* The maximum age for which this object may be cached.
*
* @return int
* The maximum time in seconds that this object may be cached.
*
* @deprecated in drupal:8.1.9 and is removed from drupal:9.0.0. Use
* \Drupal\Core\Datetime\FormattedDateDiff::getCacheMaxAge() instead.
*
* @see https://www.drupal.org/node/2783545
*/
public function getMaxAge() {
@trigger_error(__NAMESPACE__ . '\\FormattedDateDiff::getMaxAge() is deprecated in drupal:8.1.9 and is removed from drupal:9.0.0. Use \\Drupal\\Core\\Datetime\\FormattedDateDiff::getCacheMaxAge() instead. See https://www.drupal.org/node/2783545', E_USER_DEPRECATED);
return $this
->getCacheMaxAge();
}
/**
* {@inheritdoc}
*/
public function toRenderable() {
return [
'#markup' => $this->string,
'#cache' => [
'max-age' => $this->maxAge,
],
];
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
FormattedDateDiff:: |
protected | property | The maximum time in seconds that this string may be cached. | |
FormattedDateDiff:: |
protected | property | The actual formatted time difference. | |
FormattedDateDiff:: |
public | function |
The maximum age for which this object may be cached. Overrides UnchangingCacheableDependencyTrait:: |
|
FormattedDateDiff:: |
public | function | The maximum age for which this object may be cached. | |
FormattedDateDiff:: |
public | function | ||
FormattedDateDiff:: |
public | function |
Returns a render array representation of the object. Overrides RenderableInterface:: |
|
FormattedDateDiff:: |
public | function | Creates a new FormattedDateDiff instance. | |
UnchangingCacheableDependencyTrait:: |
public | function | 1 | |
UnchangingCacheableDependencyTrait:: |
public | function | 1 |