Добавив 30 минут

Итак, что мне нужно сделать, добавьте 30 минут к следующему

date("Ymdhis");

Я пробовал это

+strtotime("+30 minutes");

однако, похоже, это не нравится. Я задаюсь вопросом, что правильно, зачем это делать.

Ответы

Ответ 1

Ваш метод использования strtotime должен работать.

<?php

echo date("Y/m/d H:i:s", strtotime("now")) . "\n";
echo date("Y/m/d H:i:s", strtotime("+30 minutes"));

?>

Выход

2012/03/22 10:55:45
2012/03/22 11:25:45 // 30 minutes later

Однако ваш метод добавления времени, вероятно, неверен. Вышеупомянутое будет работать, чтобы добавить 30 минут к текущему времени. Предположим, вы хотите добавить 30 минут от заданного времени, $t, а затем использовать strtotime второй параметр, который используется в качестве базы для вычисления относительных дат.

date("Y/m/d H:i:s", strtotime("+30 minutes", $t));

http://codepad.org/Z5yquF55

Ответ 2

Я тестировал этот код, но он не работает для меня:

 $t = date();  
 date("Y/m/d h:i:s", strtotime("+30 minutes", $t));

Здесь мое решение

 //This is where you put the date, but I use the current date for this example
 $date = date("Y-m-d H:i:s");

 //Convert the variable date using strtotime and 30 minutes then format it again on the desired date format
 $add_min = date("Y-m-d H:i:s", strtotime($date . "+30 minutes"));
 echo  $date . "<br />"; //current date or whatever date you want to put in here
 echo  $add_min; //add 30 minutes

Ответ 3

Используйте эту функцию:

date("Ymdhis", strtotime("+30 minutes"))

Ответ 4

strtotime() принимает второй параметр, который является его начальной точкой.

Если у вас есть date("Ymdhis", $somedate) и вы хотите добавить к нему 30 минут, вы можете сделать date("Ymdhis", strtotime("+30 minutes", $someddate))

Ответ 5

Попробуйте что-нибудь вроде.

$Start = "12:00:00";
$Minutes = 30;

$To = date("H:i:s", strtotime($Start)+($Minutes*60));

Ответ 6

Не уверен, как выглядит весь ваш код, но:

date("Ymdhis");

возвращает строку. Поэтому нет смысла добавлять результат

strtotime("+30 minutes");

(который является целым числом) к этой строке.

Вы либо хотите

strtotime("+30 minutes");

сам по себе, или

date("Ymdhis", strtotime("+30 minutes"));

чтобы получить форматированную строку.

Ответ 7

Вы имеете в виду date("Ymdhis", strtotime("+30 minutes"));? Это будет означать, что в будущем это будет 30 минут.

Ответ 8

<?php
print date("Y-m-d h:i:s", (time() + (60*30)) );
?>