Class TimeHelper
Time Helper class for easy use of time data.
Manipulation of time data.
Properties summary
- $_View protected
\Cake\View\View
The View instance this helper is attached to
- $_config protected
array
Runtime config
- $_configInitialized protected
bool
Whether the config property has already been configured with defaults
- $_defaultConfig protected
array
Config options
- $_helperMap protected
array
A helper lookup table used to lazy load helper objects.
- $_templater protected
\Cake\View\StringTemplate
StringTemplate instance.
- $helpers protected
array
List of helpers used by this helper
Method Summary
- __debugInfo() public
Returns an array that can be used to describe the internal state of this object.
- configShallow() public
Merge provided config with existing config. Unlike
config()
which does a recursive merge for nested keys, this method does a simple merge. - format() public
Returns a formatted date string, given either a Time instance, UNIX timestamp or a valid strtotime() date string.
- fromString() public
Returns a UNIX timestamp, given either a UNIX timestamp or a valid strtotime() date string.
- i18nFormat() public
Returns a formatted date string, given either a Datetime instance, UNIX timestamp or a valid strtotime() date string.
- isWithinNext() public
Returns true if specified datetime is within the interval specified, else false.
- wasWithinLast() public
Returns true if specified datetime was within the interval specified, else false.
Method Detail
__call() public
__call(string $method, array $params)
Provide non fatal errors on missing method calls.
Parameters
-
string
$method Method to invoke
-
array
$params Array of params for the method.
Returns
mixed|void
__construct() public
__construct(\Cake\View\View $view, array $config)
Default Constructor
Parameters
-
\Cake\View\View
$view The View this helper is being attached to.
-
array
$config optional Configuration settings for the helper.
__debugInfo() public
__debugInfo()
Returns an array that can be used to describe the internal state of this object.
Returns
array
__get() public
__get(string $name)
Lazy loads helpers.
Parameters
-
string
$name Name of the property being accessed.
Returns
\Cake\View\Helper|null|void
Helper instance if helper with provided name exists
_configDelete() protected
_configDelete(string $key)
Deletes a single config key.
Parameters
-
string
$key Key to delete.
Throws
Cake\Core\Exception\Exception
if attempting to clobber existing config
_configRead() protected
_configRead(?string $key)
Reads a config key.
Parameters
-
string|null
$key Key to read.
Returns
mixed
_configWrite() protected
_configWrite(mixed $key, mixed $value, mixed $merge)
Writes a config key.
Parameters
-
string|array
$key Key to write to.
-
mixed
$value Value to write.
-
bool|string
$merge optional True to merge recursively, 'shallow' for simple merge, false to overwrite, defaults to false.
Throws
Cake\Core\Exception\Exception
if attempting to clobber existing config
_confirm() protected
_confirm(string $okCode, string $cancelCode)
Returns a string to be used as onclick handler for confirm dialogs.
Parameters
-
string
$okCode Code to be executed after user chose 'OK'
-
string
$cancelCode Code to be executed after user chose 'Cancel'
Returns
string
"onclick" JS code
_getTimezone() protected
_getTimezone(mixed $timezone)
Get a timezone.
Will use the provided timezone, or default output timezone if defined.
Parameters
-
\DateTimeZone|string|null
$timezone The override timezone if applicable.
Returns
\DateTimeZone|string|null
The chosen timezone or null.
addClass() public
addClass(array $options, string $class, string $key)
Adds the given class to the element options
Parameters
-
array
$options Array options/attributes to add a class to
-
string
$class The class name being added.
-
string
$key optional the key to use for class. Defaults to
'class'
.
Returns
array
Array of options with $key set.
configShallow() public
configShallow(mixed $key, mixed $value)
Merge provided config with existing config. Unlike config()
which does a recursive merge for nested keys, this method does a simple merge.
Setting a specific value:
$this->configShallow('key', $value);
Setting a nested value:
$this->configShallow('some.nested.key', $value);
Updating multiple config settings at the same time:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Parameters
-
string|array
$key The key to set, or a complete array of configs.
-
mixed|null
$value optional The value to set.
Returns
$this
format() public
format(mixed $date, mixed $format, mixed $invalid, mixed $timezone)
Returns a formatted date string, given either a Time instance, UNIX timestamp or a valid strtotime() date string.
This method is an alias for TimeHelper::i18nFormat().
Parameters
-
int|string|\DateTimeInterface
$date UNIX timestamp, strtotime() valid string or DateTime object (or a date format string).
-
int|string|null
$format optional date format string (or a UNIX timestamp, strtotime() valid string or DateTime object).
-
string|false
$invalid optional Default value to display on invalid dates
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
string|int|false
Formatted and translated date string
See Also
formatTemplate() public
formatTemplate(string $name, array $data)
Formats a template string with $data
Parameters
-
string
$name The template name.
-
array
$data The data to insert.
Returns
string
fromString() public
fromString(mixed $dateString, mixed $timezone)
Returns a UNIX timestamp, given either a UNIX timestamp or a valid strtotime() date string.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
\Cake\I18n\Time
getConfig() public
getConfig(?string $key, mixed $default)
Returns the config.
Usage
Reading the whole config:
$this->getConfig();
Reading a specific value:
$this->getConfig('key');
Reading a nested value:
$this->getConfig('some.nested.key');
Reading with default value:
$this->getConfig('some-key', 'default-value');
Parameters
-
string|null
$key optional The key to get or null for the whole config.
-
mixed
$default optional The return value when the key does not exist.
Returns
mixed
Configuration data at the named key or null if the key does not exist.
getConfigOrFail() public
getConfigOrFail(string $key)
Returns the config for this specific key.
The config value for this key must exist, it can never be null.
Parameters
-
string
$key The key to get.
Returns
mixed
Configuration data at the named key
Throws
InvalidArgumentException
getTemplates() public
getTemplates(?string $template)
Gets templates to use or a specific template.
Parameters
-
string|null
$template optional String for reading a specific template, null for all.
Returns
string|array
getView() public
getView()
Get the view instance this helper is bound to.
Returns
\Cake\View\View
The bound view instance.
gmt() public
gmt(mixed $string)
Returns gmt as a UNIX timestamp.
Parameters
-
int|string|\DateTimeInterface|null
$string optional UNIX timestamp, strtotime() valid string or DateTime object
Returns
string
UNIX timestamp
See Also
i18nFormat() public
i18nFormat(mixed $date, mixed $format, mixed $invalid, mixed $timezone)
Returns a formatted date string, given either a Datetime instance, UNIX timestamp or a valid strtotime() date string.
Parameters
-
int|string|\DateTimeInterface|null
$date UNIX timestamp, strtotime() valid string or DateTime object
-
string|int|null
$format optional Intl compatible format string.
-
string|false
$invalid optional Default value to display on invalid dates
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
string|int|false
Formatted and translated date string or value for $invalid
on failure.
Throws
Exception
When the date cannot be parsed
See Also
implementedEvents() public
implementedEvents()
Event listeners.
Returns
array
initialize() public
initialize(array $config)
Constructor hook method.
Implement this method to avoid having to overwrite the constructor and call parent.
Parameters
-
array
$config The configuration settings provided to this helper.
isFuture() public
isFuture(mixed $dateString, mixed $timezone)
Returns true, if the given datetime string is in the future.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if the given datetime string lies in the future.
isPast() public
isPast(mixed $dateString, mixed $timezone)
Returns true, if the given datetime string is in the past.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if the given datetime string lies in the past.
isThisMonth() public
isThisMonth(mixed $dateString, mixed $timezone)
Returns true if given datetime string is within this month
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if datetime string is within the current month
isThisWeek() public
isThisWeek(mixed $dateString, mixed $timezone)
Returns true if given datetime string is within this week.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if datetime string is within current week
isThisYear() public
isThisYear(mixed $dateString, mixed $timezone)
Returns true if given datetime string is within the current year.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if datetime string is within current year
isToday() public
isToday(mixed $dateString, mixed $timezone)
Returns true, if the given datetime string is today.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if the given datetime string is today.
isTomorrow() public
isTomorrow(mixed $dateString, mixed $timezone)
Returns true if given datetime string is tomorrow.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if datetime string was yesterday
isWithinNext() public
isWithinNext(string $timeInterval, mixed $dateString, mixed $timezone)
Returns true if specified datetime is within the interval specified, else false.
Parameters
-
string
$timeInterval the numeric value with space then time type. Example of valid types: 6 hours, 2 days, 1 minute.
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
See Also
nice() public
nice(mixed $dateString, mixed $timezone, ?string $locale)
Returns a nicely formatted date string for given Datetime string.
Parameters
-
int|string|\DateTimeInterface|null
$dateString optional UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
-
string|null
$locale optional Locale string.
Returns
string
Formatted date string
setConfig() public
setConfig(mixed $key, mixed $value, mixed $merge)
Sets the config.
Usage
Setting a specific value:
$this->setConfig('key', $value);
Setting a nested value:
$this->setConfig('some.nested.key', $value);
Updating multiple config settings at the same time:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Parameters
-
string|array
$key The key to set, or a complete array of configs.
-
mixed|null
$value optional The value to set.
-
bool
$merge optional Whether to recursively merge or overwrite existing config, defaults to true.
Returns
$this
Throws
Cake\Core\Exception\Exception
When trying to set a key that is invalid.
setTemplates() public
setTemplates(array $templates)
Sets templates to use.
Parameters
-
string[]
$templates Templates to be added.
Returns
$this
templater() public
templater()
Returns the templater instance.
Returns
\Cake\View\StringTemplate
timeAgoInWords() public
timeAgoInWords(mixed $dateTime, array $options)
Formats a date into a phrase expressing the relative time.
Additional options
-
element
- The element to wrap the formatted time in. Has a few additional options:-
tag
- The tag to use, defaults to 'span'. -
class
- The class name to use, defaults totime-ago-in-words
. -
title
- Defaults to the $dateTime input.
-
Parameters
-
int|string|\DateTimeInterface
$dateTime UNIX timestamp, strtotime() valid string or DateTime object.
-
array
$options optional Default format if timestamp is used in $dateString
Returns
string
Relative time string.
See Also
toAtom() public
toAtom(mixed $dateString, mixed $timezone)
Returns a date formatted for Atom RSS feeds.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
string
Formatted date string
See Also
toQuarter() public
toQuarter(mixed $dateString, mixed $range)
Returns the quarter
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
bool
$range optional if true returns a range in Y-m-d format
Returns
string[]|int
1, 2, 3, or 4 quarter of year or array if $range true
See Also
toRss() public
toRss(mixed $dateString, mixed $timezone)
Formats date for RSS feeds
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
string
Formatted date string
toUnix() public
toUnix(mixed $dateString, mixed $timezone)
Returns a UNIX timestamp from a textual datetime description.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
string
UNIX timestamp
See Also
wasWithinLast() public
wasWithinLast(string $timeInterval, mixed $dateString, mixed $timezone)
Returns true if specified datetime was within the interval specified, else false.
Parameters
-
string
$timeInterval the numeric value with space then time type. Example of valid types: 6 hours, 2 days, 1 minute.
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
See Also
wasYesterday() public
wasYesterday(mixed $dateString, mixed $timezone)
Returns true if given datetime string was yesterday.
Parameters
-
int|string|\DateTimeInterface
$dateString UNIX timestamp, strtotime() valid string or DateTime object
-
string|\DateTimeZone|null
$timezone optional User's timezone string or DateTimeZone object
Returns
bool
True if datetime string was yesterday
Property Detail
$_View protected
The View instance this helper is attached to
Type
\Cake\View\View
$_config protected
Runtime config
Type
array
$_configInitialized protected
Whether the config property has already been configured with defaults
Type
bool
$_defaultConfig protected
Config options
Type
array
$_helperMap protected
A helper lookup table used to lazy load helper objects.
Type
array
$_templater protected
StringTemplate instance.
Type
\Cake\View\StringTemplate
$helpers protected
List of helpers used by this helper
Type
array
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.0/class-Cake.View.Helper.TimeHelper.html