Add 'x' number of hours to date

Jonah Katz picture Jonah Katz · Jul 8, 2012 · Viewed 181.1k times · Source

I currently have php returning the current date/time like so:

$now = date("Y-m-d H:m:s");

What I'd like to do is have a new variable $new_time equal $now + $hours, where $hours is a number of hours ranging from 24 to 800.

Any suggestions?

Answer

fdomig picture fdomig · Jul 8, 2012

You may use something like the strtotime() function to add something to the current timestamp. $new_time = date("Y-m-d H:i:s", strtotime('+5 hours')).

If you need variables in the function, you must use double quotes then like strtotime("+{$hours} hours"), however better you use strtotime(sprintf("+%d hours", $hours)) then.