$datetime API variable / WireDateTime class

The $datetime API variable provides helpers for working with dates/times and conversion between formats.

Click any linked item for full usage details and examples. Hookable methods are indicated with the icon. In addition to those shown below, the WireDateTime class also inherits all the methods and properties of: Wire.

Show $var?             Show args?        

Common

NameReturnSummary 
$datetime->date()
string boolFormat a date, using PHP date(), strftime() or other special strings (see arguments). 
$datetime->elapsedTimeStr($start)
stringRender an elapsed time string 
$datetime->relativeTimeStr($ts)
stringGiven a unix timestamp (or date string), returns a formatted string indicating the time relative to now
$datetime->stringToTimestamp(string $str, string $format)
intGiven a date/time string and expected format, convert it to a unix timestamp 

Advanced

NameReturnSummary 
$datetime->convertDateFormat(string $format, string $type)
stringGiven a PHP date() format, convert it to either 'js', 'strftime' or 'regex' format 
$datetime->getDateFormats()
arrayReturn all predefined PHP date() formats for use as dates 
$datetime->getTimeFormats()
arrayReturn all predefined PHP date() formats for use as times 

Additional methods and properties

In addition to the methods and properties above, WireDateTime also inherits the methods and properties of these classes:

API reference based on ProcessWire core version 3.0.148

Twitter updates

  • This week we’ve got a few new and interesting core updates in progress, though none quite ready to release just yet. So rather than releasing version 3.0.154 today, I thought we'd instead take a brief look at what’s coming over the next few weeks… More
    3 April 2020
  • ProcessWire 3.0.153 (dev) focuses on comments field updates, significant refactoring/improvements to ProcessWire’s core Template class and PagesLoader class (which is used by the pages API variable), and we introduce a useful new pages API method— More
    20 March 2020
  • ProcessWire 3.0.152 core updates— This week we have some major improvements to our core date/time Inputfield, as well as a new ability to specify your own custom classes for Page objects— More
    6 March 2020

Latest news

  • ProcessWire Weekly #308
    In the 308th issue of ProcessWire Weekly we're going to take a look at some upcoming core and pro module updates, check out two all-new third party modules, and more. Read on!
    Weekly.pw / 4 April 2020
  • ProcessWire updates and additions in progress
    This week we’ve got a few new and interesting core updates in progress, though none quite ready to release just yet. So rather than releasing version 3.0.154 today, I thought we'd instead take a brief look at what’s coming over the next few weeks. This post covers all the details.
    Blog / 3 April 2020
  • Subscribe to weekly ProcessWire news

“To Drupal, or to ProcessWire? The million dollar choice. We decided to make an early switch to PW. And in retrospect, ProcessWire was probably the best decision we made. Thanks are due to ProcessWire and the amazing system and set of modules that are in place.” —Unni Krishnan, Founder of PigtailPundits