class FullTransformer

Parser and formatter for date formats.

Methods

__construct(string $pattern, string $timezone)

Constructor.

getTransformers()

Return the array of Transformer objects.

string
format(DateTime $dateTime)

Format a DateTime using ICU dateformat pattern.

string
formatReplace(string $dateChars, DateTime $dateTime)

Return the formatted ICU value for the matched date characters.

int
parse(DateTime $dateTime, string $value)

Parse a pattern based string to a timestamp value.

string
getReverseMatchingRegExp(string $pattern)

Retrieve a regular expression to match with a formatted value.

bool
isQuoteMatch(string $quoteMatch)

Check if the first char of a string is a single quote.

string
replaceQuoteMatch(string $quoteMatch)

Replaces single quotes at the start or end of a string with two single quotes.

Details

at line line 45
__construct(string $pattern, string $timezone)

Constructor.

Parameters

string $pattern The pattern to be used to format and/or parse values
string $timezone The timezone to perform the date/time calculations

at line line 79
Transformer[] getTransformers()

Return the array of Transformer objects.

Return Value

Transformer[] Associative array of Transformer objects (format char => Transformer)

at line line 91
string format(DateTime $dateTime)

Format a DateTime using ICU dateformat pattern.

Parameters

DateTime $dateTime A DateTime object to be used to generate the formatted value

Return Value

string The formatted value

at line line 110
string formatReplace(string $dateChars, DateTime $dateTime)

Return the formatted ICU value for the matched date characters.

Parameters

string $dateChars The date characters to be replaced with a formatted ICU value
DateTime $dateTime A DateTime object to be used to generate the formatted value

Return Value

string The formatted value

Exceptions

NotImplementedException When it encounters a not implemented date character

at line line 140
int parse(DateTime $dateTime, string $value)

Parse a pattern based string to a timestamp value.

Parameters

DateTime $dateTime A configured DateTime object to use to perform the date calculation
string $value String to convert to a time value

Return Value

int The corresponding Unix timestamp

Exceptions

InvalidArgumentException When the value can not be matched with pattern

at line line 177
string getReverseMatchingRegExp(string $pattern)

Retrieve a regular expression to match with a formatted value.

Parameters

string $pattern The pattern to create the reverse matching regular expression

Return Value

string The reverse matching regular expression with named captures being formed by the transformer index in the $transformer array

at line line 213
bool isQuoteMatch(string $quoteMatch)

Check if the first char of a string is a single quote.

Parameters

string $quoteMatch The string to check

Return Value

bool true if matches, false otherwise

at line line 225
string replaceQuoteMatch(string $quoteMatch)

Replaces single quotes at the start or end of a string with two single quotes.

Parameters

string $quoteMatch The string to replace the quotes

Return Value

string A string with the single quotes replaced