Datetime
This page describes the date and time format used in LuaWebGen.
The calendrical calculations always assume a Gregorian calendar, with no leap seconds.
Datetime strings must have numbers/words representing date and optionally time. Use commas and spaces as delimiters. The stated day of the week is ignored whether it's correct or not. A string containing an invalid date is an error (e.g. a string containing two years or two months is an error).
Time Format
Hours, minutes, and seconds are separated by colons, although all need not be specified.
"10:"
, "10:11"
, and "10:11:12"
are all valid.
If the 24-hour clock is used, it is an error to specify "PM"
for times later than 12 noon.
For example, "23:15 PM"
is an error.
Time Zone Format
First character is a sign "+"
(east of UTC) or "-"
(west of UTC).
Hour and minute offsets are separated by a colon.
Jul 27 2006 03:56:28 +2:00
Another format is [sign][number]
without colon.
If [number]
is less than 24, it is the offset in hours e.g. "-10"
= -10 hours.
Otherwise it is the offset in hundred hours, e.g. "+75"
= "+115"
= +1¼ hours.
Jul 27 2006 -75 (2006-07-27 01:15 UTC)
Jul 27 2006 -115 (2006-07-27 01:15 UTC)
Jul 27 2006 +10 (2006-07-26 14:00 UTC)
Jul 27 2006 +2 (2006-07-26 22:00 UTC)
Standard timezones GMT, UTC, EST, EDT, CST, CDT, MST, MDT, PST and PDT are supported.
Jul 27 2006 GMT (2006-07-27 00:00 UTC)
Jul 27 2006 UTC (2006-07-27 00:00 UTC)
Jul 27 2006 EST (2006-07-27 05:00 UTC)
Jul 27 2006 EDT (2006-07-27 04:00 UTC)
Jul 27 2006 CST (2006-07-27 06:00 UTC)
Jul 27 2006 CDT (2006-07-27 05:00 UTC)
Jul 27 2006 MST (2006-07-27 07:00 UTC)
Jul 27 2006 MDT (2006-07-27 06:00 UTC)
Jul 27 2006 PST (2006-07-27 08:00 UTC)
Jul 27 2006 PDT (2006-07-27 07:00 UTC)
Date Format
Short dates can use either a "/"
or "-"
date separator, but must follow the month/day/year format.
02-03-70 (1970-02-03 UTC)
12/25/98 (1998-12-25 UTC)
Long dates of the form "July 10 2005"
can be given with the year, month, and day in any order, and the year in 2-digit or 4-digit form.
If you use the 2-digit form, the year must be greater than or equal to 70.
Feb-03-70 (1970-02-03 UTC)
December 25 2008 (2008-12-25 UTC)
Supported ISO 8601 Formats
YYYY-MM-DD
where YYYY
is the year, MM
is the month of the year, and DD
is the day of the month.
2000-12-31
20001231
YYYY-DDD
where YYYY
is the year, DDD
is the day of the year.
1995-035 (1995-02-04 UTC)
1995035 (1995-02-04 UTC)
YYYY-WDD-D
where YYYY
is the year, DD
is the week of the year, D
is the day of the week.
1997-W01-1 (1996-12-30 UTC)
1997W017 (1997-01-05 UTC)
DATE HH:MM:SS
Where DATE
is the date format described above, HH
is the hour, MM
is the minute, SS
is the seconds.
1995-02-04 24:00:51 (1995-02-05 00:00:51 UTC)
1976-W01-1 12:12:12 (1975-12-29 12:12:12 UTC)
1995-035 23:59:59 (1995-02-04 23:59:59 UTC)
Compact version separated by Latin capital letter T:
19950205T000051 (1995-02-05 00:00:51 UTC)
1976W011T121212 (1975-12-29 12:12:12 UTC)
1995035T235959 (1995-02-04 23:59:59 UTC)
DATE TIME +HH:MM
, DATE TIME -HHMM
, DATE TIME Z
Where DATE
and TIME
are the date and time formats described above.
First character is a sign "+"
(east of UTC) or "-"
(west of UTC).
HH
and MM
is hour and minute offset.
The Z
stands for zero offset.
1976-W01-1 12:00Z (1975-12-29 12:00 UTC)
1976-W01-1 13:00+01:00 (1975-12-29 12:00 UTC)
1976-W01-1 0700-0500 (1975-12-29 12:00 UTC)
Page updated: 2021-07-07