Time Helper class for easy use of time data.
Manipulation of time data.
integerstringCakeTime::nice() stringThe format to use when formatting a time using CakeTime::niceShort() and the difference is between 3 and 7 days
arrayThe format to use when formatting a time using CakeTime::timeAgoInWords() and the difference is less than CakeTime::$wordEnd
stringstringThe format to use when formatting a time using CakeTime::timeAgoInWords() and the difference is more than CakeTime::$wordEnd
Magic set method for backwards compatibility. Used by TimeHelper to get static variables in CakeTime
Magic set method for backwards compatibility. Used by TimeHelper to modify static variables in CakeTime
Auxiliary function to translate a matched specifier element from a regular expression into a Windows safe and i18n aware specifier
Converts a string representing the format for the function strftime and returns a Windows safe and i18n aware format.
Returns a partial SQL string to search for all records between two times occurring on the same day.
Returns a formatted date string, given either a UNIX timestamp or a valid strtotime() date string. This function also accepts a time string and a format string as first and second parameters. In that case this function behaves as a wrapper for TimeHelper::i18nFormat()
Returns a formatted date string, given either a UNIX timestamp or a valid strtotime() date string. It takes into account the default date format for the current language if a LC_TIME file is used.
Returns either a relative or a formatted absolute date depending on the difference between the current time and given datetime. $datetime should be in a strtotime - parsable format, like MySQL's datetime datatype.
__get( string $name )
Magic set method for backwards compatibility. Used by TimeHelper to get static variables in CakeTime
$name __set( string $name , mixes $value )
Magic set method for backwards compatibility. Used by TimeHelper to modify static variables in CakeTime
$name $value _strftime( string $format , integer $date )
Multibyte wrapper for strftime.
Handles utf8_encoding the result of strftime when necessary.
$format $date _translateSpecifier( array $specifier )
Auxiliary function to translate a matched specifier element from a regular expression into a Windows safe and i18n aware specifier
$specifier convert( string $serverTime , string|DateTimeZone $timezone )
Converts given time (in server's time zone) to user's local time, given his/her timezone.
$serverTime $timezone convertSpecifiers( string $format , string $time null )
Converts a string representing the format for the function strftime and returns a Windows safe and i18n aware format.
$format Format with specifiers for strftime function. Accepts the special specifier %S which mimics the modifier S for date()
$time optional null dayAsSql( integer|string|DateTime $dateString , string $fieldName , string|DateTimeZone $timezone null )
Returns a partial SQL string to search for all records between two times occurring on the same day.
$dateString $fieldName $timezone optional null daysAsSql( integer|string|DateTime $begin , integer|string|DateTime $end , string $fieldName , string|DateTimeZone $timezone null )
Returns a partial SQL string to search for all records between two dates.
$begin $end $fieldName $timezone optional null format( integer|string|DateTime $date , integer|string|DateTime $format null , boolean|string $default false , string|DateTimeZone $timezone null )
Returns a formatted date string, given either a UNIX timestamp or a valid strtotime() date string. This function also accepts a time string and a format string as first and second parameters. In that case this function behaves as a wrapper for TimeHelper::i18nFormat()
Create localized & formatted time:
CakeTime::format('2012-02-15', '%m-%d-%Y'); // returns 02-15-2012
CakeTime::format('2012-02-15 23:01:01', '%c'); // returns preferred date and time based on configured locale
CakeTime::format('0000-00-00', '%d-%m-%Y', 'N/A'); // return N/A becuase an invalid date was passed
CakeTime::format('2012-02-15 23:01:01', '%c', 'N/A', 'America/New_York'); // converts passed date to timezone $date $format optional null $default optional false $timezone optional null fromString( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns a UNIX timestamp, given either a UNIX timestamp or a valid strtotime() date string.
$dateString $timezone optional null gmt( integer|string|DateTime $dateString null )
Returns gmt as a UNIX timestamp.
$dateString optional null i18nFormat( integer|string|DateTime $date , string $format null , boolean|string $default false , string|DateTimeZone $timezone null )
Returns a formatted date string, given either a UNIX timestamp or a valid strtotime() date string. It takes into account the default date format for the current language if a LC_TIME file is used.
$date $format optional null $default optional false $timezone optional null isFuture( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string is in the future.
$dateString $timezone optional null isPast( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string is in the past.
$dateString $timezone optional null isThisMonth( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string is within this month
$dateString $timezone optional null isThisWeek( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string is within this week.
$dateString $timezone optional null isThisYear( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string is within current year.
$dateString $timezone optional null isToday( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string is today.
$dateString $timezone optional null isTomorrow( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string is tomorrow.
$dateString $timezone optional null isWithinNext( string|integer $timeInterval , integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if specified datetime is within the interval specified, else false.
$timeInterval the numeric value with space then time type. Example of valid types: 6 hours, 2 days, 1 minute.
$dateString $timezone optional null listTimezones( integer|string $filter null , string $country null , boolean|array $options array() )
Get list of timezone identifiers
$filter optional null A regex to filter identifier Or one of DateTimeZone class constants (PHP 5.3 and above)
$country optional null A two-letter ISO 3166-1 compatible country code. This option is only used when $filter is set to DateTimeZone::PER_COUNTRY (available only in PHP 5.3 and above)
$options optional array() If true (default value) groups the identifiers list by primary region. Otherwise, an array containing group, abbr, before, and after keys. Setting group and abbr to true will group results and append timezone abbreviation in the display value. Set before and after to customize the abbreviation wrapper.
nice( integer|string|DateTime $dateString null , string|DateTimeZone $timezone null , string $format null )
Returns a nicely formatted date string for given Datetime string.
See http://php.net/manual/en/function.strftime.php for information on formatting using locale strings.
$dateString optional null $timezone optional null $format optional null CakeTime::$niceFormat is usedniceShort( integer|string|DateTime $dateString null , string|DateTimeZone $timezone null )
Returns a formatted descriptive date string for given datetime string.
If the given date is today, the returned string could be "Today, 16:54". If the given date is tomorrow, the returned string could be "Tomorrow, 16:54". If the given date was yesterday, the returned string could be "Yesterday, 16:54". If the given date is within next or last week, the returned string could be "On Thursday, 16:54". If $dateString's year is the current year, the returned string does not include mention of the year.
$dateString optional null $timezone optional null serverOffset( )
Returns server's offset from GMT in seconds.
timeAgoInWords( integer|string|DateTime $dateTime , array $options array() )
Returns either a relative or a formatted absolute date depending on the difference between the current time and given datetime. $datetime should be in a strtotime - parsable format, like MySQL's datetime datatype.
format => a fall back format if the relative time is longer than the duration specified by endaccuracy => Specifies how accurate the date should be described (array) end => The end of relative time tellingrelativeString => The printf compatible string when outputting past relative timerelativeStringFuture => The printf compatible string when outputting future relative timeabsoluteString => The printf compatible string when outputting absolute timeuserOffset => Users offset from GMT (in hours) Deprecated use timezone instead.timezone => The user timezone the timestamp should be formatted in.Relative dates look something like this:
Default date formatting is d/m/yy e.g: on 18/2/09
The returned string includes 'ago' or 'on' and assumes you'll properly add a word like 'Posted ' before the function output.
NOTE: If the difference is one week or more, the lowest level of accuracy is day
$dateTime $options optional array() timezone( string|DateTimeZone $timezone null )
Returns a timezone object from a string or the user's timezone object
$timezone optional null Timezone string or DateTimeZone object If null it tries to get timezone from 'Config.timezone' config var
toAtom( string $dateString , string|DateTimeZone $timezone null )
Returns a date formatted for Atom RSS feeds.
$dateString $timezone optional null toQuarter( integer|string|DateTime $dateString , boolean $range false )
Returns the quarter
$dateString $range optional false toRSS( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Formats date for RSS feeds
$dateString $timezone optional null toServer( integer|string|DateTime $dateString , string|DateTimeZone $timezone null , string $format 'Y-m-d H:i:s' )
Returns a formatted date in server's timezone.
If a DateTime object is given or the dateString has a timezone segment, the timezone parameter will be ignored.
If no timezone parameter is given and no DateTime object, the passed $dateString will be considered to be in the UTC timezone.
$dateString $timezone optional null $format optional 'Y-m-d H:i:s' toUnix( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns a UNIX timestamp from a textual datetime description. Wrapper for PHP function strtotime().
$dateString $timezone optional null wasWithinLast( string|integer $timeInterval , integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if specified datetime was within the interval specified, else false.
$timeInterval the numeric value with space then time type. Example of valid types: 6 hours, 2 days, 1 minute.
$dateString $timezone optional null wasYesterday( integer|string|DateTime $dateString , string|DateTimeZone $timezone null )
Returns true if given datetime string was yesterday.
$dateString $timezone optional null protected static integer
Temporary variable containing the timestamp value, used internally in convertSpecifiers()
null
public static string
The format to use when formatting a time using CakeTime::nice()
The format should use the locale strings as defined in the PHP docs under strftime (http://php.net/manual/en/function.strftime.php)
'%a, %b %eS %Y, %H:%M'
public static string
The format to use when formatting a time using CakeTime::niceShort() and the difference is between 3 and 7 days
'%B %d, %H:%M'
public static array
The format to use when formatting a time using CakeTime::timeAgoInWords() and the difference is less than CakeTime::$wordEnd
array(
'year' => 'day',
'month' => 'day',
'week' => 'day',
'day' => 'hour',
'hour' => 'minute',
'minute' => 'minute',
'second' => 'second',
) public static string
The end of relative time telling
'+1 month'
public static string
The format to use when formatting a time using CakeTime::timeAgoInWords() and the difference is more than CakeTime::$wordEnd
'j/n/y'
© 2005–2016 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.
http://api.cakephp.org/2.8/class-CakeTime.html