Class TimeHelper

Time Helper class for easy use of time data.

Manipulation of time data.

Cake\View\Helper implements Cake\Event\EventListenerInterface uses Cake\Core\InstanceConfigTrait
Extended by Cake\View\Helper\TimeHelper uses Cake\View\StringTemplateTrait

Properties summary

Inherited Properties

Method Summary

  • _getTimezone() protected
    Get a timezone.
  • 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.
  • gmt() public
    Returns gmt as a UNIX timestamp.
  • i18nFormat() public

    Returns a formatted date string, given either a Datetime instance, UNIX timestamp or a valid strtotime() date string.

  • Event listeners.
  • isFuture() public
    Returns true if given datetime string is in the future.
  • isPast() public
    Returns true if given datetime string is in the past.
  • isThisMonth() public
    Returns true if given datetime string is within this month
  • isThisWeek() public
    Returns true if given datetime string is within this week.
  • isThisYear() public
    Returns true if given datetime string is within the current year.
  • isToday() public
    Returns true if given datetime string is today.
  • isTomorrow() public
    Returns true if given datetime string is tomorrow.
  • Returns true if specified datetime is within the interval specified, else false.
  • nice() public
    Returns a nicely formatted date string for given Datetime string.
  • Formats a date into a phrase expressing the relative time.
  • toAtom() public
    Returns a date formatted for Atom RSS feeds.
  • toQuarter() public
    Returns the quarter
  • toRss() public
    Formats date for RSS feeds
  • toUnix() public
    Returns a UNIX timestamp from a textual datetime description.
  • Returns true if specified datetime was within the interval specified, else false.
  • Returns true if given datetime string was yesterday.

Method Detail

_getTimezone()source protected

_getTimezone( null|string|DateTimeZone $timezone )

Get a timezone.

Will use the provided timezone, or default output timezone if defined.

Parameters

null|string|DateTimeZone $timezone
The override timezone if applicable.

Returns

null|string|DateTimeZone
The chosen timezone or null.

format()source public

format( integer|string|DateTime $date , integer|string|null $format null , boolean|string $invalid false , string|DateTimeZone|null $timezone null )

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

integer|string|DateTime $date
UNIX timestamp, strtotime() valid string or DateTime object (or a date format string)
integer|string|null $format optional null
date format string (or a UNIX timestamp, strtotime() valid string or DateTime object)
boolean|string $invalid optional false
Default value to display on invalid dates
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

string
Formatted and translated date string

See

\Cake\I18n\Time::i18nFormat()

fromString()source public

fromString( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns a UNIX timestamp, given either a UNIX timestamp or a valid strtotime() date string.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

Cake\I18n\Time

gmt()source public

gmt( integer|string|DateTime|null $string null )

Returns gmt as a UNIX timestamp.

Parameters

integer|string|DateTime|null $string optional null
UNIX timestamp, strtotime() valid string or DateTime object

Returns

integer
UNIX timestamp

See

\Cake\I18n\Time::gmt()

i18nFormat()source public

i18nFormat( integer|string|DateTime $date , string|null $format null , boolean|string $invalid false , string|DateTimeZone|null $timezone null )

Returns a formatted date string, given either a Datetime instance, UNIX timestamp or a valid strtotime() date string.

Parameters

integer|string|DateTime $date
UNIX timestamp, strtotime() valid string or DateTime object
string|null $format optional null
Intl compatible format string.
boolean|string $invalid optional false
Default value to display on invalid dates
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

string
Formatted and translated date string

Throws

Exception
When the date cannot be parsed

See

\Cake\I18n\Time::i18nFormat()

implementedEvents()source public

implementedEvents( )

Event listeners.

Returns

array

Overrides

Cake\View\Helper::implementedEvents()

isFuture()source public

isFuture( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string is in the future.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string is today

isPast()source public

isPast( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string is in the past.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string is today

isThisMonth()source public

isThisMonth( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string is within this month

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string is within the current month

isThisWeek()source public

isThisWeek( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string is within this week.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string is within current week

isThisYear()source public

isThisYear( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string is within the current year.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string is within current year

isToday()source public

isToday( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string is today.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string is today

isTomorrow()source public

isTomorrow( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string is tomorrow.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string was yesterday

isWithinNext()source public

isWithinNext( string|integer $timeInterval , integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if specified datetime is within the interval specified, else false.

Parameters

string|integer $timeInterval

the numeric value with space then time type. Example of valid types: 6 hours, 2 days, 1 minute.

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean

See

\Cake\I18n\Time::wasWithinLast()

nice()source public

nice( integer|string|DateTime|null $dateString null , string|DateTimeZone|null $timezone null , string|null $locale null )

Returns a nicely formatted date string for given Datetime string.

Parameters

integer|string|DateTime|null $dateString optional null
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object
string|null $locale optional null
Locale string.

Returns

string
Formatted date string

timeAgoInWords()source public

timeAgoInWords( integer|string|DateTime $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 to time-ago-in-words.
    • title - Defaults to the $dateTime input.

Parameters

integer|string|DateTime $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

\Cake\I18n\Time::timeAgoInWords()

toAtom()source public

toAtom( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns a date formatted for Atom RSS feeds.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

string
Formatted date string

See

\Cake\I18n\Time::toAtom()

toQuarter()source public

toQuarter( integer|string|DateTime $dateString , boolean $range false )

Returns the quarter

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
boolean $range optional false
if true returns a range in Y-m-d format

Returns

integer|array
1, 2, 3, or 4 quarter of year or array if $range true

See

\Cake\I18n\Time::toQuarter()

toRss()source public

toRss( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Formats date for RSS feeds

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

string
Formatted date string

toUnix()source public

toUnix( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns a UNIX timestamp from a textual datetime description.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

integer
Unix timestamp

See

\Cake\I18n\Time::toUnix()

wasWithinLast()source public

wasWithinLast( string|integer $timeInterval , integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if specified datetime was within the interval specified, else false.

Parameters

string|integer $timeInterval

the numeric value with space then time type. Example of valid types: 6 hours, 2 days, 1 minute.

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean

See

\Cake\I18n\Time::wasWithinLast()

wasYesterday()source public

wasYesterday( integer|string|DateTime $dateString , string|DateTimeZone|null $timezone null )

Returns true if given datetime string was yesterday.

Parameters

integer|string|DateTime $dateString
UNIX timestamp, strtotime() valid string or DateTime object
string|DateTimeZone|null $timezone optional null
User's timezone string or DateTimeZone object

Returns

boolean
True if datetime string was yesterday

Methods inherited from Cake\View\Helper

__call()source 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.

__construct()source 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()source public

__debugInfo( )

Returns an array that can be used to describe the internal state of this object.

Returns

array

__get()source public

__get( string $name )

Lazy loads helpers.

Parameters

string $name
Name of the property being accessed.

Returns

Cake\View\Helper|null
Helper instance if helper with provided name exists

_confirm()source protected

_confirm( string $message , string $okCode , string $cancelCode '' , array $options [] )

Returns a string to be used as onclick handler for confirm dialogs.

Parameters

string $message
Message to be displayed
string $okCode
Code to be executed after user chose 'OK'
string $cancelCode optional ''
Code to be executed after user chose 'Cancel'
array $options optional []
Array of options

Returns

string
onclick JS code

addClass()source public

addClass( array $options [] , string|null $class null , string $key 'class' )

Adds the given class to the element options

Parameters

array $options optional []
Array options/attributes to add a class to
string|null $class optional null
The class name being added.
string $key optional 'class'
the key to use for class.

Returns

array
Array of options with $key set.

initialize()source 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.

Methods used from Cake\View\StringTemplateTrait

formatTemplate()source public

formatTemplate( string $name , array $data )

Format a template string with $data

Parameters

string $name
The template name.
array $data
The data to insert.

Returns

string

templater()source public

templater( )

templater

Returns

Cake\View\StringTemplate

templates()source public

templates( string|null|array $templates null )

Get/set templates to use.

Parameters

string|null|array $templates optional null

null or string allow reading templates. An array allows templates to be added.

Returns


$this|string|array

Methods used from Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Delete a single config key

Parameters

string $key
Key to delete.

Throws

Cake\Core\Exception\Exception
if attempting to clobber existing config

_configRead()source protected

_configRead( string|null $key )

Read a config variable

Parameters

string|null $key
Key to read.

Returns

mixed

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge false )

Write a config variable

Parameters

string|array $key
Key to write to.
mixed $value
Value to write.
boolean|string $merge optional false

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

config()source public

config( string|array|null $key null , mixed|null $value null , boolean $merge true )

Usage

Reading the whole config:

$this->config();

Reading a specific value:

$this->config('key');

Reading a nested value:

$this->config('some.nested.key');

Setting a specific value:

$this->config('key', $value);

Setting a nested value:

$this->config('some.nested.key', $value);

Updating multiple config settings at the same time:

$this->config(['one' => 'value', 'another' => 'value']);

Parameters

string|array|null $key optional null
The key to get/set, or a complete array of configs.
mixed|null $value optional null
The value to set.
boolean $merge optional true
Whether to recursively merge or overwrite existing config, defaults to true.

Returns

mixed
Config value being read, or the object itself on write operations.

Throws

Cake\Core\Exception\Exception
When trying to set a key that is invalid.

configShallow()source public

configShallow( string|array $key , mixed|null $value null )

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->config('key', $value);

Setting a nested value:

$this->config('some.nested.key', $value);

Updating multiple config settings at the same time:

$this->config(['one' => 'value', 'another' => 'value']);

Parameters

string|array $key
The key to set, or a complete array of configs.
mixed|null $value optional null
The value to set.

Returns


$this The object itself.

Properties detail

$_defaultConfigsource

protected array

Config options

[
    'outputTimezone' => null
]

© 2005–2017 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/3.3/class-Cake.View.Helper.TimeHelper.html