Bug #76374 [Opn->Asn]: Date difference varies according day time
Edit report at https://bugs.php.net/bug.php?id=76374&edit=1
ID: 76374
Updated by: derick@php.net
Reported by: fcasadei at fcpartner dot com
Summary: Date difference varies according day time
-Status: Open
+Status: Assigned
Type: Bug
Package: Date/time related
Operating System: linux & windows
PHP Version: 7.0.30
-Assigned To:
+Assigned To: derick
Block user comment: N
Private report: N
New Comment:
Considering that the author is European (me), I can assure you there is nothing US centric here.
However, there does seem to be a bug, as it should indeed say 9 in each case.
Assigning to myself.
Previous Comments:
------------------------------------------------------------------------
[2018-05-28 13:41:31] fcasadei at fcpartner dot com
thanks
but with ("date.timezone", "Europe/Paris"), back to 8 and 9 !!
Is PHP another american centric stuff ?
ini_set("date.timezone", "Europe/Paris");
$objDateTo = new dateTime('2017-10-01');
$objDateFrom = new dateTime('2017-01-01');
$interval = $objDateTo->diff($objDateFrom);
echo $interval->m;
$objDateTo = new dateTime('2017-10-01 00:00:00');
$objDateFrom = new dateTime('2017-01-01 00:00:00');
$interval = $objDateTo->diff($objDateFrom);
echo $interval->m;
$objDateTo = new dateTime('2017-10-01 12:00:00');
$objDateFrom = new dateTime('2017-01-01 12:00:00');
$interval = $objDateTo->diff($objDateFrom);
echo $interval->m;
gives 889 !!
12 hours make a month ???
------------------------------------------------------------------------
[2018-05-26 14:15:00] rauljosesantos at gmail dot com
If you define your timezone:
ini_set("date.timezone", "GMT");
Both work nicely
https://3v4l.org/SuVe2
ini_set("date.timezone", "GMT");
$objDateTo = new dateTime('2017-10-01')
$objDateFrom = new dateTime('2017-01-01
$interval = $objDateTo->diff($objDateFr
echo "Date Only: " . $interval->m . "\r
$objDateTo = new dateTime('2017-10-01 1
$objDateFrom = new dateTime('2017-01-01
$interval = $objDateTo->diff($objDateFr
echo "Date and Time: " . $interval->m;
------------------------------------------------------------------------
[2018-05-26 13:18:19] fcasadei at fcpartner dot com
In France, I don't know exactly.
------------------------------------------------------------------------
[2018-05-26 12:35:52] a at b dot c dot de
I get 8 in both cases (more precisely, 8 months, 30 days - just shy of nine months).
When exactly does Daylight Saving start in your locale?
------------------------------------------------------------------------
[2018-05-24 15:47:53] fcasadei at fcpartner dot com
Description:
------------
---
From manual page: http://www.php.net/datetime.diff
---
$objDateTo = new dateTime('2017-10-01');
$objDateFrom = new dateTime('2017-01-01');
$interval = $objDateTo->diff($objDateFrom);
echo $interval->m;
will display 8
$objDateTo = new dateTime('2017-10-01 12:00:00');
$objDateFrom = new dateTime('2017-01-01 12:00:00');
$interval = $objDateTo->diff($objDateFrom);
echo $interval->m;
will display 9
Expected result:
----------------
Should be 9 in both cases
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=76374&edit=1
Thread (10 messages)