How can the DateTime class in PHP be used to calculate average times from a set of decimal values and convert them to the format 00:00:00?

To calculate average times from a set of decimal values in PHP using the DateTime class, we can convert the decimal values to seconds, calculate the average in seconds, and then convert the average back to the desired format of 00:00:00 using the DateTime class.

// Convert decimal values to seconds
$times = [2.5, 3.75, 4.25];
$seconds = array_map(function($time) {
    return round($time * 3600); // Convert decimal to seconds
}, $times);

// Calculate average in seconds
$averageSeconds = round(array_sum($seconds) / count($seconds));

// Convert average back to format 00:00:00
$averageTime = gmdate("H:i:s", $averageSeconds);
echo $averageTime;