note 106058 deleted from datetime.add by danbrown
| From: | danbrown@php.net | Date: | Thu, 06 Oct 2011 15:55:52 +0000 |
| Subject: | note 106058 deleted from datetime.add by danbrown | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-183663@lists.php.net to get a copy of this message | ||
Note Submitter: dev.maizy.ru
----
I'm not sure, but there is strange behaviour when add 30D to 2369-12-01 (and for 2369+400,
2369+800, 2369+1200 ... year)
<?php
$sep31 = new DateTime('2369-12-31');
echo '2369-12-31: ', $sep31->format('Y-m-d H:i:s'), PHP_EOL;
assert($sep31->format('Y-m-d H:i:s') === '2369-12-31 00:00:00');
$date = new DateTime('2369-12-01');
$date->add(new DateInterval('P30D'));
echo '2369-12-01 + P30D = 2369-01-31 00:00:00 ? => ', $date->format('Y-m-d
H:i:s'), ' - wtf?', PHP_EOL;
assert($date->format('Y-m-d H:i:s') === '2369-01-31 00:00:00'); // false