$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)
string arrayRender an elapsed time string 
$datetime->isStrtotime($str)
(nothing) 
$datetime->relativeTimeStr($ts)
stringGiven a unix timestamp (or date string), returns a formatted string indicating the time relative to now
$datetime->strftime(string $format)
string falsestrftime() replacement function that works in PHP 8.1+ (though not locale aware) 
$datetime->stringToTimestamp(string $str, string $format)
intGiven a date/time string and expected format, convert it to a unix timestamp 
$datetime->strtodate(string $str)
stringParse English textual datetime description into a formatted date string, or blank if not a date 
$datetime->strtotime(string $str)
false int nullParse about any English textual datetime description into a Unix timestamp using PHP’s strtotime() 

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.244

Latest news

  • ProcessWire Weekly #558
    In the 558th issue of ProcessWire Weekly we'll check out the blog post that introduces ProcessWire 3.0.244, share some recent ProcessWire highlights, and more. Read on!
    Weekly.pw / 18 January 2025
  • ProcessWire 3.0.244 new main/master version
    ProcessWire 3.0.244 is our newest main/master/stable version. It's been more than a year in the making and is packed with tons of new features, issue fixes, optimizations and more. This post covers all the details.
    Blog / 18 January 2025
  • Subscribe to weekly ProcessWire news

“Yesterday I sent the client a short documentation for their ProcessWire-powered website. Today all features already used with no questions. #cmsdoneright—Marc Hinse, Web designer/developer