-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.33 PHP=5.6.30-7+deb.sury.org~xenial+1

adodb: 2024-05-03 09:25:17
php : 2024-05-03 10:25:17
error for %Y %m %x %X, strftime=2024 05 05/03/24 10:25:17, adodb=2024 05 05/03/24 09:25:17
error for %H %M S, strftime=10 25 S, adodb=09 25 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

2:24:43 pm PM 28 Fri August 10 22 10 22 24 28 Friday 0 08 Aug 8 +0200 RFC2822 Fri, 28 Aug 1981 22:24:43 +0200 43 31 367878283 5 81 1981 239 7200 2003 Error date(): 367878283
 
  "date CEST 1981-08-28 22:24:43 pm PM 28 Fri August 10 22 10 22 24 28 Friday 0 08 Aug 8 +0200 RFC2822 Fri, 28 Aug 1981 22:24:43 +0200 43 31 367878283 5 81 1981 239 7200 2003" (date len=171)
  "date CEST 1981-08-28 21:24:43 pm PM 28 Fri August 9 21 09 21 24 28 Friday 0 08 Aug 8 +0100 RFC2822 Fri, 28 Aug 1981 21:24:43 +0100 43 31 367878283 5 81 1981 239 3600 2003" (adodb_date len=170)

Error getdate() 367878283
Array ( [seconds] => 43 [minutes] => 24 [hours] => 22 [mday] => 28 [wday] => 5 [mon] => 8 [year] => 1981 [yday] => 239 [weekday] => Friday [month] => August [0] => 367878283 )
Array ( [seconds] => 43 [minutes] => 24 [hours] => 21 [mday] => 28 [wday] => 5 [mon] => 8 [year] => 1981 [yday] => 239 [weekday] => Friday [month] => August [0] => 367878283 )

1:57:53 pm PM 23 Sun August 9 21 09 21 57 23 Sunday 0 08 Aug 8 +0200 RFC2822 Sun, 23 Aug 1981 21:57:53 +0200 53 31 367444673 0 81 1981 234 7200 2003 Error date(): 367444673

 
  "date CEST 1981-08-23 21:57:53 pm PM 23 Sun August 9 21 09 21 57 23 Sunday 0 08 Aug 8 +0200 RFC2822 Sun, 23 Aug 1981 21:57:53 +0200 53 31 367444673 0 81 1981 234 7200 2003" (date len=170)
  "date CEST 1981-08-23 20:57:53 pm PM 23 Sun August 8 20 08 20 57 23 Sunday 0 08 Aug 8 +0100 RFC2822 Sun, 23 Aug 1981 20:57:53 +0100 53 31 367444673 0 81 1981 234 3600 2003" (adodb_date len=170)

Error getdate() 367444673
Array ( [seconds] => 53 [minutes] => 57 [hours] => 21 [mday] => 23 [wday] => 0 [mon] => 8 [year] => 1981 [yday] => 234 [weekday] => Sunday [month] => August [0] => 367444673 )
Array ( [seconds] => 53 [minutes] => 57 [hours] => 20 [mday] => 23 [wday] => 0 [mon] => 8 [year] => 1981 [yday] => 234 [weekday] => Sunday [month] => August [0] => 367444673 )

1:10:59 am AM 24 Sat May 1 1 01 01 10 24 Saturday 1 05 May 5 +0200 RFC2822 Sat, 24 May 1980 01:10:59 +0200 59 31 327971459 6 80 1980 144 7200 2003 Error date(): 327971459

 
  "date CEST 1980-05-24 01:10:59 am AM 24 Sat May 1 1 01 01 10 24 Saturday 1 05 May 5 +0200 RFC2822 Sat, 24 May 1980 01:10:59 +0200 59 31 327971459 6 80 1980 144 7200 2003" (date len=168)
  "date CEST 1980-05-24 00:10:59 am AM 24 Sat May 12 0 12 00 10 24 Saturday 1 05 May 5 +0100 RFC2822 Sat, 24 May 1980 00:10:59 +0100 59 31 327971459 6 80 1980 144 3600 2003" (adodb_date len=169)

Error getdate() 327971459
Array ( [seconds] => 59 [minutes] => 10 [hours] => 1 [mday] => 24 [wday] => 6 [mon] => 5 [year] => 1980 [yday] => 144 [weekday] => Saturday [month] => May [0] => 327971459 )
Array ( [seconds] => 59 [minutes] => 10 [hours] => 0 [mday] => 24 [wday] => 6 [mon] => 5 [year] => 1980 [yday] => 144 [weekday] => Saturday [month] => May [0] => 327971459 )

19:57:28 pm PM 28 Tue September 7 19 07 19 57 28 Tuesday 0 09 Sep 9 +0100 RFC2822 Tue, 28 Sep 1982 19:57:28 +0100 28 30 402087448 2 82 1982 270 3600 2003 Error date(): 402087448

 
  "date CET 1982-09-28 19:57:28 pm PM 28 Tue September 7 19 07 19 57 28 Tuesday 0 09 Sep 9 +0100 RFC2822 Tue, 28 Sep 1982 19:57:28 +0100 28 30 402087448 2 82 1982 270 3600 2003" (date len=173)
  "date CET 1982-09-28 20:57:28 pm PM 28 Tue September 8 20 08 20 57 28 Tuesday 0 09 Sep 9 +0200 RFC2822 Tue, 28 Sep 1982 20:57:28 +0200 28 30 402087448 2 82 1982 270 7200 2003" (adodb_date len=173)

Error getdate() 402087448
Array ( [seconds] => 28 [minutes] => 57 [hours] => 19 [mday] => 28 [wday] => 2 [mon] => 9 [year] => 1982 [yday] => 270 [weekday] => Tuesday [month] => September [0] => 402087448 )
Array ( [seconds] => 28 [minutes] => 57 [hours] => 20 [mday] => 28 [wday] => 2 [mon] => 9 [year] => 1982 [yday] => 270 [weekday] => Tuesday [month] => September [0] => 402087448 )

3:17:24 pm PM 20 Tue May 11 23 11 23 17 20 Tuesday 1 05 May 5 +0200 RFC2822 Tue, 20 May 1980 23:17:24 +0200 24 31 327705444 2 80 1980 140 7200 2003 Error date(): 327705444

 
  "date CEST 1980-05-20 23:17:24 pm PM 20 Tue May 11 23 11 23 17 20 Tuesday 1 05 May 5 +0200 RFC2822 Tue, 20 May 1980 23:17:24 +0200 24 31 327705444 2 80 1980 140 7200 2003" (date len=169)
  "date CEST 1980-05-20 22:17:24 pm PM 20 Tue May 10 22 10 22 17 20 Tuesday 1 05 May 5 +0100 RFC2822 Tue, 20 May 1980 22:17:24 +0100 24 31 327705444 2 80 1980 140 3600 2003" (adodb_date len=169)

Error getdate() 327705444
Array ( [seconds] => 24 [minutes] => 17 [hours] => 23 [mday] => 20 [wday] => 2 [mon] => 5 [year] => 1980 [yday] => 140 [weekday] => Tuesday [month] => May [0] => 327705444 )
Array ( [seconds] => 24 [minutes] => 17 [hours] => 22 [mday] => 20 [wday] => 2 [mon] => 5 [year] => 1980 [yday] => 140 [weekday] => Tuesday [month] => May [0] => 327705444 )

6:15:18 am AM 02 Thu July 6 6 06 06 15 2 Thursday 0 07 Jul 7 +0200 RFC2822 Thu, 02 Jul 1981 06:15:18 +0200 18 31 362895318 4 81 1981 182 7200 2003 Error date(): 362895318

 
  "date CEST 1981-07-02 06:15:18 am AM 02 Thu July 6 6 06 06 15 2 Thursday 0 07 Jul 7 +0200 RFC2822 Thu, 02 Jul 1981 06:15:18 +0200 18 31 362895318 4 81 1981 182 7200 2003" (date len=168)
  "date CEST 1981-07-02 05:15:18 am AM 02 Thu July 5 5 05 05 15 2 Thursday 0 07 Jul 7 +0100 RFC2822 Thu, 02 Jul 1981 05:15:18 +0100 18 31 362895318 4 81 1981 182 3600 2003" (adodb_date len=168)

Error getdate() 362895318
Array ( [seconds] => 18 [minutes] => 15 [hours] => 6 [mday] => 2 [wday] => 4 [mon] => 7 [year] => 1981 [yday] => 182 [weekday] => Thursday [month] => July [0] => 362895318 )
Array ( [seconds] => 18 [minutes] => 15 [hours] => 5 [mday] => 2 [wday] => 4 [mon] => 7 [year] => 1981 [yday] => 182 [weekday] => Thursday [month] => July [0] => 362895318 )

10:23:54 am AM 23 Wed September 10 10 10 10 23 23 Wednesday 0 09 Sep 9 +0200 RFC2822 Wed, 23 Sep 1981 10:23:54 +0200 54 30 370081434 3 81 1981 265 7200 2003 Error date(): 370081434

 
  "date CEST 1981-09-23 10:23:54 am AM 23 Wed September 10 10 10 10 23 23 Wednesday 0 09 Sep 9 +0200 RFC2822 Wed, 23 Sep 1981 10:23:54 +0200 54 30 370081434 3 81 1981 265 7200 2003" (date len=177)
  "date CEST 1981-09-23 09:23:54 am AM 23 Wed September 9 9 09 09 23 23 Wednesday 0 09 Sep 9 +0100 RFC2822 Wed, 23 Sep 1981 09:23:54 +0100 54 30 370081434 3 81 1981 265 3600 2003" (adodb_date len=175)

Error getdate() 370081434
Array ( [seconds] => 54 [minutes] => 23 [hours] => 10 [mday] => 23 [wday] => 3 [mon] => 9 [year] => 1981 [yday] => 265 [weekday] => Wednesday [month] => September [0] => 370081434 )
Array ( [seconds] => 54 [minutes] => 23 [hours] => 9 [mday] => 23 [wday] => 3 [mon] => 9 [year] => 1981 [yday] => 265 [weekday] => Wednesday [month] => September [0] => 370081434 )

1:14:50 am AM 13 Tue May 11 11 11 11 14 13 Tuesday 1 05 May 5 +0200 RFC2822 Tue, 13 May 1980 11:14:50 +0200 50 31 327057290 2 80 1980 133 7200 2003 Error date(): 327057290

 
  "date CEST 1980-05-13 11:14:50 am AM 13 Tue May 11 11 11 11 14 13 Tuesday 1 05 May 5 +0200 RFC2822 Tue, 13 May 1980 11:14:50 +0200 50 31 327057290 2 80 1980 133 7200 2003" (date len=169)
  "date CEST 1980-05-13 10:14:50 am AM 13 Tue May 10 10 10 10 14 13 Tuesday 1 05 May 5 +0100 RFC2822 Tue, 13 May 1980 10:14:50 +0100 50 31 327057290 2 80 1980 133 3600 2003" (adodb_date len=169)

Error getdate() 327057290
Array ( [seconds] => 50 [minutes] => 14 [hours] => 11 [mday] => 13 [wday] => 2 [mon] => 5 [year] => 1980 [yday] => 133 [weekday] => Tuesday [month] => May [0] => 327057290 )
Array ( [seconds] => 50 [minutes] => 14 [hours] => 10 [mday] => 13 [wday] => 2 [mon] => 5 [year] => 1980 [yday] => 133 [weekday] => Tuesday [month] => May [0] => 327057290 )

5:00:06 am AM 17 Fri September 5 5 05 05 00 17 Friday 0 09 Sep 9 +0200 RFC2822 Fri, 17 Sep 1982 05:00:06 +0200 06 30 401079606 5 82 1982 259 7200 2003 Error date(): 401079606

 
  "date CEST 1982-09-17 05:00:06 am AM 17 Fri September 5 5 05 05 00 17 Friday 0 09 Sep 9 +0200 RFC2822 Fri, 17 Sep 1982 05:00:06 +0200 06 30 401079606 5 82 1982 259 7200 2003" (date len=172)
  "date CEST 1982-09-17 04:00:06 am AM 17 Fri September 4 4 04 04 00 17 Friday 0 09 Sep 9 +0100 RFC2822 Fri, 17 Sep 1982 04:00:06 +0100 06 30 401079606 5 82 1982 259 3600 2003" (adodb_date len=172)

4:40:12 pm PM 21 Sun June 2 14 02 14 40 21 Sunday 0 06 Jun 6 +0200 RFC2822 Sun, 21 Jun 1981 14:40:12 +0200 12 30 361975212 0 81 1981 171 7200 2003 Error date(): 361975212
 
  "date CEST 1981-06-21 14:40:12 pm PM 21 Sun June 2 14 02 14 40 21 Sunday 0 06 Jun 6 +0200 RFC2822 Sun, 21 Jun 1981 14:40:12 +0200 12 30 361975212 0 81 1981 171 7200 2003" (date len=168)
  "date CEST 1981-06-21 13:40:12 pm PM 21 Sun June 1 13 01 13 40 21 Sunday 0 06 Jun 6 +0100 RFC2822 Sun, 21 Jun 1981 13:40:12 +0100 12 30 361975212 0 81 1981 171 3600 2003" (adodb_date len=168)

Error getdate() 361975212
Array ( [seconds] => 12 [minutes] => 40 [hours] => 14 [mday] => 21 [wday] => 0 [mon] => 6 [year] => 1981 [yday] => 171 [weekday] => Sunday [month] => June [0] => 361975212 )
Array ( [seconds] => 12 [minutes] => 40 [hours] => 13 [mday] => 21 [wday] => 0 [mon] => 6 [year] => 1981 [yday] => 171 [weekday] => Sunday [month] => June [0] => 361975212 )

9:57:19 am AM 11 Tue August 9 9 09 09 57 11 Tuesday 0 08 Aug 8 +0200 RFC2822 Tue, 11 Aug 1981 09:57:19 +0200 19 31 366364639 2 81 1981 222 7200 2003 Error date(): 366364639

 
  "date CEST 1981-08-11 09:57:19 am AM 11 Tue August 9 9 09 09 57 11 Tuesday 0 08 Aug 8 +0200 RFC2822 Tue, 11 Aug 1981 09:57:19 +0200 19 31 366364639 2 81 1981 222 7200 2003" (date len=170)
  "date CEST 1981-08-11 08:57:19 am AM 11 Tue August 8 8 08 08 57 11 Tuesday 0 08 Aug 8 +0100 RFC2822 Tue, 11 Aug 1981 08:57:19 +0100 19 31 366364639 2 81 1981 222 3600 2003" (adodb_date len=170)

Error getdate() 366364639
Array ( [seconds] => 19 [minutes] => 57 [hours] => 9 [mday] => 11 [wday] => 2 [mon] => 8 [year] => 1981 [yday] => 222 [weekday] => Tuesday [month] => August [0] => 366364639 )
Array ( [seconds] => 19 [minutes] => 57 [hours] => 8 [mday] => 11 [wday] => 2 [mon] => 8 [year] => 1981 [yday] => 222 [weekday] => Tuesday [month] => August [0] => 366364639 )

1:52:50 am AM 19 Sun July 1 1 01 01 52 19 Sunday 0 07 Jul 7 +0200 RFC2822 Sun, 19 Jul 1981 01:52:50 +0200 50 31 364348370 0 81 1981 199 7200 2003 Error date(): 364348370

 
  "date CEST 1981-07-19 01:52:50 am AM 19 Sun July 1 1 01 01 52 19 Sunday 0 07 Jul 7 +0200 RFC2822 Sun, 19 Jul 1981 01:52:50 +0200 50 31 364348370 0 81 1981 199 7200 2003" (date len=167)
  "date CEST 1981-07-19 00:52:50 am AM 19 Sun July 12 0 12 00 52 19 Sunday 0 07 Jul 7 +0100 RFC2822 Sun, 19 Jul 1981 00:52:50 +0100 50 31 364348370 0 81 1981 199 3600 2003" (adodb_date len=168)

Error getdate() 364348370
Array ( [seconds] => 50 [minutes] => 52 [hours] => 1 [mday] => 19 [wday] => 0 [mon] => 7 [year] => 1981 [yday] => 199 [weekday] => Sunday [month] => July [0] => 364348370 )
Array ( [seconds] => 50 [minutes] => 52 [hours] => 0 [mday] => 19 [wday] => 0 [mon] => 7 [year] => 1981 [yday] => 199 [weekday] => Sunday [month] => July [0] => 364348370 )

1:03:12 am AM 18 Mon August 11 11 11 11 03 18 Monday 1 08 Aug 8 +0200 RFC2822 Mon, 18 Aug 1980 11:03:12 +0200 12 31 335437392 1 80 1980 230 7200 2003 Error date(): 335437392

 
  "date CEST 1980-08-18 11:03:12 am AM 18 Mon August 11 11 11 11 03 18 Monday 1 08 Aug 8 +0200 RFC2822 Mon, 18 Aug 1980 11:03:12 +0200 12 31 335437392 1 80 1980 230 7200 2003" (date len=171)
  "date CEST 1980-08-18 10:03:12 am AM 18 Mon August 10 10 10 10 03 18 Monday 1 08 Aug 8 +0100 RFC2822 Mon, 18 Aug 1980 10:03:12 +0100 12 31 335437392 1 80 1980 230 3600 2003" (adodb_date len=171)

Error getdate() 335437392
Array ( [seconds] => 12 [minutes] => 3 [hours] => 11 [mday] => 18 [wday] => 1 [mon] => 8 [year] => 1980 [yday] => 230 [weekday] => Monday [month] => August [0] => 335437392 )
Array ( [seconds] => 12 [minutes] => 3 [hours] => 10 [mday] => 18 [wday] => 1 [mon] => 8 [year] => 1980 [yday] => 230 [weekday] => Monday [month] => August [0] => 335437392 )

Testing random dates between 100 and 4000

Testing 1961 to 1973, or 378432000 seconds, offset=64007: 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 Tested 5913 dates

Failed :-(

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