<?php
$format = 'Год: Y, Месяц: m, День: d';
$dates = [new DateTime('2020-10-20'), new DateTime('2000-02-05'), new DateTime('2000-02-02'), new DateTime('2000-05-01')];
usort($dates, fn($a, $b) => $a < $b ? -1: 1);
//Самая ранняя будет: $dates[0]->format($format);
foreach($dates as $date) {
var_dump($date->format($format));
}
var_dump('Min: ' . $dates[0]->format($format));
var_dump('Max: ' . $dates[count($dates) - 1]->format($format));
string(42) "Год: 2000, Месяц: 02, День: 02"
string(42) "Год: 2000, Месяц: 02, День: 05"
string(42) "Год: 2000, Месяц: 05, День: 01"
string(42) "Год: 2020, Месяц: 10, День: 20"
string(47) "Min: Год: 2000, Месяц: 02, День: 02"
string(47) "Max: Год: 2020, Месяц: 10, День: 20"
https://3v4l.org/sVdO8