在PHP中获取一周前的时间戳?

时间:2010-03-24 12:44:27

标签: php datetime timestamp

我需要使用PHP计算7天前的时间戳,所以如果它现在是3月25日晚上7:30,它将返回3月18日晚7:30的时间戳。

我应该从当前时间戳中减去604800秒,还是有更好的方法?

6 个答案:

答案 0 :(得分:81)

strtotime("-1 week")

答案 1 :(得分:26)

strtotime是你的朋友

echo strtotime("-1 week");

答案 2 :(得分:11)

http://php.net/strtotime

echo strtotime("-1 week");

答案 3 :(得分:9)

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";
?>

在第一行(或最后一行)上更改+到 - 将获得您想要的结果。

答案 4 :(得分:4)

PHP 5.2 ,您可以使用DateTime

$timestring="2015-03-25";
$datetime=new DateTime($timestring);
$datetime->modify('-7 day');
echo $datetime->format("Y-m-d"); //2015-03-18

不是使用字符串创建DateTime,而是可以直接在对象上setTimestamp

$timestamp=1427241600;//2015-03-25
$datetime=new DateTime();
$datetime->setTimestamp($timestamp);
$datetime->modify('-7 day');
echo $datetime->format("Y-m-d"); //2015-03-18

答案 5 :(得分:0)

<?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);