[php-src] Issue #8964: DateTime object comparison
| From: | egorbwork | Date: | Sat, 09 Jul 2022 18:16:53 +0000 |
| Subject: | [php-src] Issue #8964: DateTime object comparison | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-241890@lists.php.net to get a copy of this message | ||
Issue: https://github.com/php/php-src/issues/8964
Author: egorbwork
### Description
The following code:
Started from php 8.1: https://3v4l.org/vvvWU
Code is reused from PHPUnit DateTimeComparator(SebastianBergmann\Comparator)
```php
<?php
$actual = date_create();
$expected = date_create();
$absDelta = abs(0.5);
$delta = new \DateInterval(sprintf('PT%dS', $absDelta));
$delta->f = $absDelta - floor($absDelta);
$actualClone = (clone $actual)
->setTimezone(new DateTimeZone('UTC'));
$expectedLower = (clone $expected)
->setTimezone(new DateTimeZone('UTC'))
->sub($delta);
$expectedUpper = (clone $expected)
->setTimezone(new DateTimeZone('UTC'))
->add($delta);
var_dump($actualClone < $expectedLower, $actualClone > $expectedUpper);
```
Resulted in this output:
```
bool(false)
bool(false)
```
But I expected this output instead:
```
bool(true)
bool(false)
```
### PHP Version
PHP 8.1
### Operating System
_No response_