setTime( Hour, minutes, seconds )
All above inputs are in integer. date_default_timezone_set('America/Chicago');
$date = new DateTime('2012-04-15 22:15:40');
echo $date->format('Y/m/d H:i:s') . "<br>";
$date->setTime(23,30);
echo $date->format('Y/m/d H:i:s') . "<br>";
The output is here 2012/04/15 22:15:40
2012/04/15 23:30:00
We can change the setTime to different values and output will change like this . $date->setTime(2,50,32);
output is here 2012/04/15 22:15:40
2012/04/15 02:50:32
$date = date_create('2020-08-16');
date_time_set($date, 24, 56,58);
echo date_format($date, 'Y-m-d H:i:s');
2020-08-17 00:56:58
In the above code check how the hour has changed the day by adding one.
$date = new DateTime();
$date->setTime(14,30,45, 500000); //2:30:45 PM and 500000 microseconds
echo $date->format('Y-m-d H:i:s.u'); // Output: 14:30:45.500000
Output
2025-10-18 14:30:45.500000
$date = new DateTime(); // Current date and time
$currentHour = (int) $date->format('H');
$currentMinute = (int) $date->format('i');
$currentSecond = (int) $date->format('s');
$currentMicrosecond = (int) $date->format('u');
$date->setTime($currentHour, $currentMinute, $currentSecond, $currentMicrosecond);
echo $date->format('Y-m-d H:i:s.u'); // Output includes current date with precise time
Output ( refresh this page to see the changes )
2025-10-18 01:28:44.559774
Author
🎥 Join me live on YouTubePassionate about coding and teaching, I publish practical tutorials on PHP, Python, JavaScript, SQL, and web development. My goal is to make learning simple, engaging, and project‑oriented with real examples and source code.