-24 :20-01-2038
-23 :20-02-2038
-22 :20-03-2038
-21 :20-04-2038
-20 :20-05-2038
-19 :20-06-2038
-18 :20-07-2038
-17 :20-08-2038
-16 :20-09-2038
-15 :20-10-2038
-14 :20-11-2038
-13 :20-12-2038
-12 :20-01-2039
-11 :20-02-2039
-10 :20-03-2039
-9 :20-04-2039
-8 :20-05-2039
-7 :20-06-2039
-6 :20-07-2039
-5 :20-08-2039
-4 :20-09-2039
-3 :20-10-2039
-2 :20-11-2039
-1 :20-12-2039
0 :20-01-2040
1 :20-02-2040
2 :20-03-2040
3 :20-04-2040
4 :20-05-2040
5 :20-06-2040
6 :20-07-2040
7 :20-08-2040
8 :20-09-2040
9 :20-10-2040
10 :20-11-2040
11 :20-12-2040
12 :20-01-2041
13 :20-02-2041
14 :20-03-2041
15 :20-04-2041
16 :20-05-2041
17 :20-06-2041
18 :20-07-2041
19 :20-08-2041
20 :20-09-2041
21 :20-10-2041
22 :20-11-2041
23 :20-12-2041
24 :20-01-2042

Testing adodb_date and adodb_mktime. version=0.35 PHP=7.2.34-36+ubuntu20.04.1+deb.sury.org+1

adodb: 2025-07-07 06:46:43
php : 2025-07-07 07:46:43
error for %Y %m %x %X, strftime=2025 07 07/07/25 07:46:43, adodb=2025 07 07/07/25 06:46:43
error for %H %M S, strftime=07 46 S, adodb=06 46 S

Testing gregorian <=> julian conversion

-12219382800 -12219296400 15 Oct 1582, Fri=Fri
4 Oct 1582, Thu=Thu

Testing overflow

Testing 2-digit => 4-digit year conversion

Err 2-digit 1940
Err 2-digit 1950

Testing date formating

1:06:12 pm PM 29 Wed July 9 21 09 21 06 29 Wednesday 0 07 Jul 7 +0200 RFC2822 Wed, 29 Jul 1981 21:06:12 +0200 12 31 365281572 3 81 1981 209 7200 2003 Error date(): 365281572
 
  "date CEST 1981-07-29 21:06:12 pm PM 29 Wed July 9 21 09 21 06 29 Wednesday 0 07 Jul 7 +0200 RFC2822 Wed, 29 Jul 1981 21:06:12 +0200 12 31 365281572 3 81 1981 209 7200 2003" (date len=171)
  "date CEST 1981-07-29 20:06:12 pm PM 29 Wed July 8 20 08 20 06 29 Wednesday 0 07 Jul 7 +0100 RFC2822 Wed, 29 Jul 1981 20:06:12 +0100 12 31 365281572 3 81 1981 209 3600 2003" (adodb_date len=171)

Error getdate() 365281572
Array ( [seconds] => 12 [minutes] => 6 [hours] => 21 [mday] => 29 [wday] => 3 [mon] => 7 [year] => 1981 [yday] => 209 [weekday] => Wednesday [month] => July [0] => 365281572 )
Array ( [seconds] => 12 [minutes] => 6 [hours] => 20 [mday] => 29 [wday] => 3 [mon] => 7 [year] => 1981 [yday] => 209 [weekday] => Wednesday [month] => July [0] => 365281572 )

8:13:06 am AM 25 Sun July 8 8 08 08 13 25 Sunday 0 07 Jul 7 +0200 RFC2822 Sun, 25 Jul 1982 08:13:06 +0200 06 31 396425586 0 82 1982 205 7200 2003 Error date(): 396425586

 
  "date CEST 1982-07-25 08:13:06 am AM 25 Sun July 8 8 08 08 13 25 Sunday 0 07 Jul 7 +0200 RFC2822 Sun, 25 Jul 1982 08:13:06 +0200 06 31 396425586 0 82 1982 205 7200 2003" (date len=167)
  "date CEST 1982-07-25 07:13:06 am AM 25 Sun July 7 7 07 07 13 25 Sunday 0 07 Jul 7 +0100 RFC2822 Sun, 25 Jul 1982 07:13:06 +0100 06 31 396425586 0 82 1982 205 3600 2003" (adodb_date len=167)

Error getdate() 396425586
Array ( [seconds] => 6 [minutes] => 13 [hours] => 8 [mday] => 25 [wday] => 0 [mon] => 7 [year] => 1982 [yday] => 205 [weekday] => Sunday [month] => July [0] => 396425586 )
Array ( [seconds] => 6 [minutes] => 13 [hours] => 7 [mday] => 25 [wday] => 0 [mon] => 7 [year] => 1982 [yday] => 205 [weekday] => Sunday [month] => July [0] => 396425586 )

7:43:40 am AM 26 Sat December 7 7 07 07 43 26 Saturday 0 12 Dec 12 +0100 RFC2822 Sat, 26 Dec 1981 07:43:40 +0100 40 31 378197020 6 81 1981 359 3600 2003 Error date(): 378197020

 
  "date CET 1981-12-26 07:43:40 am AM 26 Sat December 7 7 07 07 43 26 Saturday 0 12 Dec 12 +0100 RFC2822 Sat, 26 Dec 1981 07:43:40 +0100 40 31 378197020 6 81 1981 359 3600 2003" (date len=173)
  "date CET 1981-12-26 08:43:40 am AM 26 Sat December 8 8 08 08 43 26 Saturday 0 12 Dec 12 +0200 RFC2822 Sat, 26 Dec 1981 08:43:40 +0200 40 31 378197020 6 81 1981 359 7200 2003" (adodb_date len=173)

Error getdate() 378197020
Array ( [seconds] => 40 [minutes] => 43 [hours] => 7 [mday] => 26 [wday] => 6 [mon] => 12 [year] => 1981 [yday] => 359 [weekday] => Saturday [month] => December [0] => 378197020 )
Array ( [seconds] => 40 [minutes] => 43 [hours] => 8 [mday] => 26 [wday] => 6 [mon] => 12 [year] => 1981 [yday] => 359 [weekday] => Saturday [month] => December [0] => 378197020 )

0:28:35 am AM 28 Sat November 10 10 10 10 28 28 Saturday 0 11 Nov 11 +0100 RFC2822 Sat, 28 Nov 1981 10:28:35 +0100 35 30 375787715 6 81 1981 331 3600 2003 Error date(): 375787715

 
  "date CET 1981-11-28 10:28:35 am AM 28 Sat November 10 10 10 10 28 28 Saturday 0 11 Nov 11 +0100 RFC2822 Sat, 28 Nov 1981 10:28:35 +0100 35 30 375787715 6 81 1981 331 3600 2003" (date len=175)
  "date CET 1981-11-28 11:28:35 am AM 28 Sat November 11 11 11 11 28 28 Saturday 0 11 Nov 11 +0200 RFC2822 Sat, 28 Nov 1981 11:28:35 +0200 35 30 375787715 6 81 1981 331 7200 2003" (adodb_date len=175)

Error getdate() 375787715
Array ( [seconds] => 35 [minutes] => 28 [hours] => 10 [mday] => 28 [wday] => 6 [mon] => 11 [year] => 1981 [yday] => 331 [weekday] => Saturday [month] => November [0] => 375787715 )
Array ( [seconds] => 35 [minutes] => 28 [hours] => 11 [mday] => 28 [wday] => 6 [mon] => 11 [year] => 1981 [yday] => 331 [weekday] => Saturday [month] => November [0] => 375787715 )

7:26:14 am AM 12 Sun July 7 7 07 07 26 12 Sunday 0 07 Jul 7 +0200 RFC2822 Sun, 12 Jul 1981 07:26:14 +0200 14 31 363763574 0 81 1981 192 7200 2003 Error date(): 363763574

 
  "date CEST 1981-07-12 07:26:14 am AM 12 Sun July 7 7 07 07 26 12 Sunday 0 07 Jul 7 +0200 RFC2822 Sun, 12 Jul 1981 07:26:14 +0200 14 31 363763574 0 81 1981 192 7200 2003" (date len=167)
  "date CEST 1981-07-12 06:26:14 am AM 12 Sun July 6 6 06 06 26 12 Sunday 0 07 Jul 7 +0100 RFC2822 Sun, 12 Jul 1981 06:26:14 +0100 14 31 363763574 0 81 1981 192 3600 2003" (adodb_date len=167)

1:37:48 am AM 06 Mon April 11 11 11 11 37 6 Monday 0 04 Apr 4 +0200 RFC2822 Mon, 06 Apr 1981 11:37:48 +0200 48 30 355397868 1 81 1981 95 7200 2003 Error date(): 355397868
 
  "date CEST 1981-04-06 11:37:48 am AM 06 Mon April 11 11 11 11 37 6 Monday 0 04 Apr 4 +0200 RFC2822 Mon, 06 Apr 1981 11:37:48 +0200 48 30 355397868 1 81 1981 95 7200 2003" (date len=168)
  "date CEST 1981-04-06 10:37:48 am AM 06 Mon April 10 10 10 10 37 6 Monday 0 04 Apr 4 +0100 RFC2822 Mon, 06 Apr 1981 10:37:48 +0100 48 30 355397868 1 81 1981 95 3600 2003" (adodb_date len=168)

Error getdate() 355397868
Array ( [seconds] => 48 [minutes] => 37 [hours] => 11 [mday] => 6 [wday] => 1 [mon] => 4 [year] => 1981 [yday] => 95 [weekday] => Monday [month] => April [0] => 355397868 )
Array ( [seconds] => 48 [minutes] => 37 [hours] => 10 [mday] => 6 [wday] => 1 [mon] => 4 [year] => 1981 [yday] => 95 [weekday] => Monday [month] => April [0] => 355397868 )

5:34:19 pm PM 20 Mon July 3 15 03 15 34 20 Monday 0 07 Jul 7 +0200 RFC2822 Mon, 20 Jul 1981 15:34:19 +0200 19 31 364484059 1 81 1981 200 7200 2003 Error date(): 364484059

 
  "date CEST 1981-07-20 15:34:19 pm PM 20 Mon July 3 15 03 15 34 20 Monday 0 07 Jul 7 +0200 RFC2822 Mon, 20 Jul 1981 15:34:19 +0200 19 31 364484059 1 81 1981 200 7200 2003" (date len=168)
  "date CEST 1981-07-20 14:34:19 pm PM 20 Mon July 2 14 02 14 34 20 Monday 0 07 Jul 7 +0100 RFC2822 Mon, 20 Jul 1981 14:34:19 +0100 19 31 364484059 1 81 1981 200 3600 2003" (adodb_date len=168)

Error getdate() 364484059
Array ( [seconds] => 19 [minutes] => 34 [hours] => 15 [mday] => 20 [wday] => 1 [mon] => 7 [year] => 1981 [yday] => 200 [weekday] => Monday [month] => July [0] => 364484059 )
Array ( [seconds] => 19 [minutes] => 34 [hours] => 14 [mday] => 20 [wday] => 1 [mon] => 7 [year] => 1981 [yday] => 200 [weekday] => Monday [month] => July [0] => 364484059 )

3:19:59 pm PM 02 Wed July 1 13 01 13 19 2 Wednesday 1 07 Jul 7 +0200 RFC2822 Wed, 02 Jul 1980 13:19:59 +0200 59 31 331384799 3 80 1980 183 7200 2003 Error date(): 331384799

 
  "date CEST 1980-07-02 13:19:59 pm PM 02 Wed July 1 13 01 13 19 2 Wednesday 1 07 Jul 7 +0200 RFC2822 Wed, 02 Jul 1980 13:19:59 +0200 59 31 331384799 3 80 1980 183 7200 2003" (date len=170)
  "date CEST 1980-07-02 12:19:59 pm PM 02 Wed July 12 12 12 12 19 2 Wednesday 1 07 Jul 7 +0100 RFC2822 Wed, 02 Jul 1980 12:19:59 +0100 59 31 331384799 3 80 1980 183 3600 2003" (adodb_date len=171)

Error getdate() 331384799
Array ( [seconds] => 59 [minutes] => 19 [hours] => 13 [mday] => 2 [wday] => 3 [mon] => 7 [year] => 1980 [yday] => 183 [weekday] => Wednesday [month] => July [0] => 331384799 )
Array ( [seconds] => 59 [minutes] => 19 [hours] => 12 [mday] => 2 [wday] => 3 [mon] => 7 [year] => 1980 [yday] => 183 [weekday] => Wednesday [month] => July [0] => 331384799 )

2:31:01 am AM 08 Mon September 2 2 02 02 31 8 Monday 1 09 Sep 9 +0200 RFC2822 Mon, 08 Sep 1980 02:31:01 +0200 01 30 337221061 1 80 1980 251 7200 2003 Error date(): 337221061

 
  "date CEST 1980-09-08 02:31:01 am AM 08 Mon September 2 2 02 02 31 8 Monday 1 09 Sep 9 +0200 RFC2822 Mon, 08 Sep 1980 02:31:01 +0200 01 30 337221061 1 80 1980 251 7200 2003" (date len=171)
  "date CEST 1980-09-08 01:31:01 am AM 08 Mon September 1 1 01 01 31 8 Monday 1 09 Sep 9 +0100 RFC2822 Mon, 08 Sep 1980 01:31:01 +0100 01 30 337221061 1 80 1980 251 3600 2003" (adodb_date len=171)

Error getdate() 337221061
Array ( [seconds] => 1 [minutes] => 31 [hours] => 2 [mday] => 8 [wday] => 1 [mon] => 9 [year] => 1980 [yday] => 251 [weekday] => Monday [month] => September [0] => 337221061 )
Array ( [seconds] => 1 [minutes] => 31 [hours] => 1 [mday] => 8 [wday] => 1 [mon] => 9 [year] => 1980 [yday] => 251 [weekday] => Monday [month] => September [0] => 337221061 )

Testing random dates between 100 and 4000

Testing 1962 to 1974, or 378432000 seconds, offset=77031: 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 Tested 4913 dates

Failed :-(

Original: 2063-12-24
Converted: 24-Dec-2063