note 108042 deleted from function.date by sobak
| From: | sobak@php.net | Date: | Tue, 22 Nov 2016 08:39:17 +0000 |
| Subject: | note 108042 deleted from function.date by sobak | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-207497@lists.php.net to get a copy of this message | ||
Note Submitter: matt
----
date() has some strange behavior at extremely high values:
<?php
echo "9223372036854775805: " . date("Y-m-d g:i:s a", 9223372036854775805) .
"\n";
echo "9223372036854775806: " . date("Y-m-d g:i:s a", 9223372036854775806) .
"\n";
echo "9223372036854775807: " . date("Y-m-d g:i:s a", 9223372036854775807) .
" (0x7FFFFFFFFFFFFFFF)\n";
echo "9223372036854775808: " . date("Y-m-d g:i:s a", 9223372036854775808) .
"\n";
echo "9223372036854775809: " . date("Y-m-d g:i:s a", 9223372036854775809) .
"\n";
echo "9223372036854775810: " . date("Y-m-d g:i:s a", 9223372036854775810) .
"\n";
echo "...\n";
echo "9223372036854776832: " . date("Y-m-d g:i:s a", 9223372036854776832) .
"\n";
echo "9223372036854776833: " . date("Y-m-d g:i:s a", 9223372036854776833) .
"\n";
echo "...\n";
echo "9223372036854778879: " . date("Y-m-d g:i:s a", 9223372036854778879) .
"\n";
echo "9223372036854778880: " . date("Y-m-d g:i:s a", 9223372036854778880) .
"\n";
echo "...\n";
echo "9223372036854780928: " . date("Y-m-d g:i:s a", 9223372036854780928) .
"\n";
echo "9223372036854780929: " . date("Y-m-d g:i:s a", 9223372036854780929) .
"\n";
echo "...\n";
echo "9223372036854782975: " . date("Y-m-d g:i:s a", 9223372036854782975) .
"\n";
echo "9223372036854782976: " . date("Y-m-d g:i:s a", 9223372036854782976) .
"\n";
echo "...\n";
echo "9223372036854785024: " . date("Y-m-d g:i:s a", 9223372036854785024) .
"\n";
echo "9223372036854785025: " . date("Y-m-d g:i:s a", 9223372036854785025) .
"\n";
echo "...\n";
echo "9223372036854787071: " . date("Y-m-d g:i:s a", 9223372036854787071) .
"\n";
echo "9223372036854787072: " . date("Y-m-d g:i:s a", 9223372036854787072) .
"\n";
echo "...\n";
echo "9223372036854789120: " . date("Y-m-d g:i:s a", 9223372036854789120) .
"\n";
echo "9223372036854789121: " . date("Y-m-d g:i:s a", 9223372036854789121) .
"\n";
echo "...\n";
echo "9223372036854791167: " . date("Y-m-d g:i:s a", 9223372036854791167) .
"\n";
echo "9223372036854791168: " . date("Y-m-d g:i:s a", 9223372036854791168) .
"\n";
echo "...\n";
echo "9223372036854793215: " . date("Y-m-d g:i:s a", 9223372036854793215) .
"\n";
echo "9223372036854793216: " . date("Y-m-d g:i:s a", 9223372036854793216) .
"\n";
echo "9223372036854793217: " . date("Y-m-d g:i:s a", 9223372036854793217) .
"\n";
echo "9223372036854793218: " . date("Y-m-d g:i:s a", 9223372036854793218) .
"\n";
?>
Output:
9223372036854775805: 292277026596-12-04 10:30:05 am
9223372036854775806: 292277026596-12-04 10:30:06 am
9223372036854775807: 292277026596-12-04 10:30:07 am (0x7FFFFFFFFFFFFFFF)
9223372036854775808: 292277026596-12-04 10:30:08 am
9223372036854775809: 292277026596-12-04 10:30:08 am
9223372036854775810: 292277026596-12-04 10:30:08 am
...
9223372036854778879: 292277026596-12-04 10:30:08 am
9223372036854778880: 292277026596-12-04 11:04:16 am
...
9223372036854778879: 292277026596-12-04 11:04:16 am
9223372036854778880: 292277026596-12-04 11:38:24 am
...
9223372036854780928: 292277026596-12-04 11:38:24 am
9223372036854780929: 292277026596-12-04 12:12:32 pm
...
9223372036854782975: 292277026596-12-04 12:12:32 pm
9223372036854782976: 292277026596-12-04 12:46:40 pm
...
9223372036854785024: 292277026596-12-04 12:46:40 pm
9223372036854785025: 292277026596-12-04 1:20:48 pm
...
9223372036854787071: 292277026596-12-04 1:20:48 pm
9223372036854787072: 292277026596-12-04 1:54:56 pm
...
9223372036854789120: 292277026596-12-04 1:54:56 pm
9223372036854789121: 292277026596-12-04 2:29:04 pm
...
9223372036854791167: 292277026596-12-04 2:29:04 pm
9223372036854791168: 292277026596-12-04 3:03:12 pm
...
9223372036854793215: 292277026596-12-04 3:03:12 pm
9223372036854793216: 292277026596-12-04 3:03:12 pm
9223372036854793217: -292277022657-01-27 8:37:04 am
9223372036854793218: -292277022657-01-27 8:37:04 am
---
So, the last reliable unix timecode is 9223372036854775808 (0x1000000000000000). Not that you would
probably ever need a date that high.