Получите метку времени ровно неделю назад в PHP?
Мне нужно вычислить метку времени ровно 7 дней назад с помощью PHP, поэтому, если в настоящее время 25 марта в 7:30 вечера, он вернет метку времени для 18 марта в 7:30 вечера.
Должен ли я просто вычесть 604800 секунд из текущей метки времени или есть лучший метод?
32
Author: Mike Crittenden, 2010-03-24
6 answers
strtotime("-1 week")
72
Author: SilentGhost, 2010-03-24 12:47:17
Strtotime - твой друг
echo strtotime("-1 week");
21
Author: Ben Everard, 2015-09-17 13:36:54
echo strtotime("-1 week");
9
Author: Aaron W., 2010-03-24 12:48:11
На приведен следующий примерPHP.net
<?php
$nextWeek = time() + (7 * 24 * 60 * 60);
// 7 days; 24 hours; 60 mins; 60secs
echo 'Now: '. date('Y-m-d') ."\n";
echo 'Next Week: '. date('Y-m-d', $nextWeek) ."\n";
// or using strtotime():
echo 'Next Week: '. date('Y-m-d', strtotime('+1 week')) ."\n";
?>
Изменив + на - в первой (или последней) строке, вы получите то, что хотите.
7
Author: Luís Guilherme, 2010-03-24 12:49:51
Из PHP 5.2 вы можете использовать Дата и время:
$timestring="2015-03-25";
$datetime=new DateTime($timestring);
$datetime->modify('-7 day');
echo $datetime->format("Y-m-d"); //2015-03-18
Вместо создания DateTime
со строкой, вы можете Установить метку времени непосредственно на объекте:
$timestamp=1427241600;//2015-03-25
$datetime=new DateTime();
$datetime->setTimestamp($timestamp);
$datetime->modify('-7 day');
echo $datetime->format("Y-m-d"); //2015-03-18
3
Author: Paul Tomkiel, 2015-04-17 19:09:05
<?php
$before_seven_day = $date_timestamp - (7 * 24 * 60 * 60)
// $date_timestamp is the date from where you found to find out the timestamp.
?>
Вы также можете использовать функцию преобразования строки во время для преобразования даты в метку времени. как
strtotime(23-09-2013);
-1
Author: Navdeep Singh, 2013-03-08 15:13:52