简体   繁体   中英

PHP Current time in Hour:Minutes

I want to have have 2 variables with the current time in hours:minutes and also one that has +15 minutes. But first I must also add +6 hours.

So for example, right now it is 2018-01-07 16:35:10 . So first I add +6 hours. So it will be 2018-01-07 22:35:10 . Next, I want to extract only the hours:minutes.

I want to get only "22:35" to variable.

And next variable, I want 22:35 +15 minutes, so 22:50.

So I have $dateNow = 22:35 and $dateThen = 22:50

I have tried this so far to get current time now and +6 hours, but it's not working. Error: Call to a member function format() on integer

$now = strtotime(date("Y-m-d H:i:s")." +6 hours");
$then = $now->format('H:i');
echo $then;

i think in this case it would be very use full to use the DateTime class from PHP. The Problem with your code is strtotime returns a int not an DateTime object.

I've modified your code so it will work:

$org = new DateTime("2018-01-07 16:35:10");
$then = $org->add(new DateInterval("PT6H"));
echo $then->format("H:i"),"<br>";
$afterThen = $then->add(new DateInterval("PT15M"));
echo $afterThen->format("H:i");

Short solution with DateTime and DateInterval objects:

$now = new DateTime();
$result = $now->add(new DateInterval('PT6H15M'))->format('H:i');

Try this:

$time = time() + 3600 * 6; // add 6 hours
$date = date("H:i", $time); // format date
$date_plus_15 = date("H:i", $time + 60 * 15); // format date and add 15 minutes

echo "Time: {$date} <br>";
echo "Time + 15 mins: {$date_plus_15}";

Example here: https://ideone.com/ZR6cfy

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM