What are the best practices for converting user input time values into DATETIME format for database storage in PHP?

When converting user input time values into DATETIME format for database storage in PHP, it is important to validate the input to ensure it is in the correct format and then use PHP's DateTime class to convert it to the appropriate format for database storage.

// Validate user input time value
$userInput = $_POST['time'];
$timeFormat = 'H:i:s'; // Assuming input format is hours:minutes:seconds
if (DateTime::createFromFormat($timeFormat, $userInput) === false) {
    // Handle invalid input
}

// Convert user input time value to DATETIME format
$dateTime = DateTime::createFromFormat($timeFormat, $userInput);
$timeForDatabase = $dateTime->format('Y-m-d H:i:s'); // Format for MySQL DATETIME field

// Save $timeForDatabase to the database