2014-02-17 3 views
0

У меня есть формат текущей даты $date = 'yyyy-mm-dd hh:mm' и обратите внимание, что $date уже установлен и не используется класс Date. Я понимаю, что я должен использовать strtotime, который я сделал с моим $date$datestr = strtotime($date). Я хочу вычесть 5 минут на заданное время.Вычитание минут с даты с использованием strtotime


Я пробовал простую вещь $A = strtotime($date) - strtotime('-5 min'); Но это мне не помогает.

+0

Почему 'StrToTime()'? PHP имеет API '' DateTime() '] (http://us1.php.net/DateTime), введенный давно. 'strtotime()' есть .. ну, старая школа. (или старый череп - возьмите свой выбор) –

+0

'$ A = strtotime ('- 5 min', strtotime ($ date));' – hindmost

+0

Итак, '$ date' - это строка, и вы хотите прямо вычесть 5 минут из этой строки. Вы можете изменить минутную часть, но вы должны учитывать много случаев, например, если минута больше 60, если час больше 24 и так далее. Самый лучший случай - это, на мой взгляд, делать расчеты по miliseconds, а затем преобразовывать его обратно в строку в вашем формате даты – alalp

ответ

1

его просто вычесть seconds of 5 minutes который (5*60)=300 от вашего времени

как этот

$time = strtotime($date); 
$time_new = $time-(5*60); // will time of the -5 min from the current $time 

например

$date = date('d-M-Y g:i:s A'); // current date 
echo $date."<br/>"; // output : 17-Feb-2014 8:35:58 AM 
$time = strtotime($date);  // convert current date to timestamp 
$time_new = $time - (5*60); // subtract 5 minutes from current time. 
$date_new = date('d-M-Y g:i:s A', $time_new); // convert time to the date again 
echo $date_new; // output : 17-Feb-2014 8:30:58 AM 
Смежные вопросы