PHP Class FluidTYPO3\Vhs\ViewHelpers\Format\DateRangeViewHelper

Uses DateTime and DateInterval operations to calculate a range between two DateTimes. #### Usages - As formatter, the ViewHelper can output a string value such as "2013-04-30 - 2013-05-30" where you can configure both the start and end date (or their common) formats as well as the "glue" which binds the two dates together. - As interval calculator, the ViewHelper can be used with a special "intervalFormat" which is a string used in the constructor method for the DateInterval class - for example, "P3M" to add three months. Used this way, you can specify the start date (or rely on the default "now" DateTime) and specify the "intervalFormat" to add your desired duration to your starting date and use that as end date. Without the "return" attribute, this mode simply outputs the formatted dates with interval deciding the end date. - When used with the "return" attribute you can specify which type of data to return: - if "return" is "DateTime", a single DateTime instance is returned (which is the end date). Use this with a start date to return the DateTime corresponding to "intervalFormat" into the future/past. - if "return" is a string such as "w", "d", "h" etc. the corresponding counter value (weeks, days, hours etc.) is returned. - if "return" is an array of counter IDs, for example ["w", "d"], the corresponding counters from the range are returned as an array. #### Note about LLL support and array consumers When used with the "return" attribute and when this attribute is an array, the output becomes suitable for consumption by f:translate, v:l or f:format.sprintf for example - as the "arguments" attribute: Which if "myDateDisplay" is a string such as "Deadline: %d week(s) and %d day(s)" would output a result such as "Deadline: 4 week(s) and 2 day(s)". > Tip: the values returned by this ViewHelper in both array and single > value return modes, are also nicely consumable by the "math" suite > of ViewHelpers, for example v:math.division would be able to divide > number of days by two, three etc. to further divide the date range.
Inheritance: extends TYPO3\CMS\Fluid\Core\ViewHelper\AbstractViewHelper
Datei anzeigen Open project: fluidtypo3/vhs

Protected Properties

Property Type Description
$escapingInterceptorEnabled boolean

Public Methods

Method Description
initializeArguments ( ) : void
render ( ) : mixed Render method

Protected Methods

Method Description
enforceDateTime ( mixed $date ) : DateTime
formatDate ( DateTime $date, string $format = 'Y-m-d' ) : string

Method Details

enforceDateTime() protected method

protected enforceDateTime ( mixed $date ) : DateTime
$date mixed
return DateTime

formatDate() protected method

protected formatDate ( DateTime $date, string $format = 'Y-m-d' ) : string
$date DateTime
$format string
return string

initializeArguments() public method

public initializeArguments ( ) : void
return void

render() public method

Render method
public render ( ) : mixed
return mixed

Property Details

$escapingInterceptorEnabled protected_oe property

protected bool $escapingInterceptorEnabled
return boolean