I need 0:30 through 0:59 to round down to 0:30.
I need 0:00 through 0:29 to round up to 0:30.
Example: 08:56 will round down to 08:30 where 09:00 and 09:01 will need to round up to 09:30.
Seconds should be omitted or rounded to :00
Enter this formula: =MROUND(A2,"0:15") or =MROUND(A2,"0:30") into a blank cell beside your data which need to round to nearest quarter or half hour, and then drag the fill handle down to the cells you want to apply this formula, and you will get a list of decimal numbers, see screenshot: 2.
When rounding to the nearest half, round the fraction to whichever half the fraction is closest to on the number line. If a fraction is equally close to two different halves, round the fraction up.
Why don't you just do this:
$hour = date('H');
$minute = (date('i')>30)?'30':'00';
echo "$hour:$minute";
DEMO
UPDATE
I just realized that you asked all time to be rounded to :30
:
$hour = date('H');
$minute = '30'; //always 30
echo "$hour:$minute";
My solution to a real round are the next options:
//Round Down
date('H:i',floor(time() / (15 * 60)) * (15 * 60))
//Round Up/Down
date('H:i',round(time() / (15 * 60)) * (15 * 60))
//Round Up
date('H:i',ceil(time() / (15 * 60)) * (15 * 60))
Replace time()
with the time you need, and 15
with the minutes you like to round near to.
Example:
$currentTime = time();
echo('Current Time: ' . date('H:i',$currentTime) . '<br>Rounded Up 15 Minutes time: ' . date('H:i',ceil($currentTime / (15 * 60)) * (15 * 60)));
you have to do:
$hour = date('H');
$minute = date('i');
$minute = ($minute < 30 || $minute > 30) ? 30 : $minute;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With