Using SplHeap to order objects

Code
<?php

class Data
{
    public $value;
    
    public function __construct($value)
    {
        $this->value = $value;
    }
}

class MyHeap extends SplHeap
{
    protected function compare($val1, $val2)
    {
        return strcmp(
            $val2->value,
            $val1->value
        );
    }
}

$heap = new MyHeap();
$heap->insert(new Data('foo'));
$heap->insert(new Data('baz'));
$heap->insert(new Data('qux'));
$heap->insert(new Data('bar'));

foreach ($heap as $data) {
    echo $data->value . PHP_EOL;
}
Result
bar
baz
foo
qux
Used Versions
PHP 8.3, Laminas MVC 3.2, Symfony 5.2, Laravel 8.28, PHPUnit 9.5, Doctrine ORM 2.8