Get the timestamp of exactly one week ago in PHP?

59,552

Solution 1

strtotime("-1 week")

Solution 2

strtotime is your friend

echo strtotime("-1 week");

Solution 3

http://php.net/strtotime

echo strtotime("-1 week");

Solution 4

There is the following example on 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";
?>

Changing + to - on the first (or last) line will get what you want.

Solution 5

From PHP 5.2 you can use DateTime:

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

Instead of creating DateTime with string, you can setTimestamp directly on object:

$timestamp=1427241600;//2015-03-25
$datetime=new DateTime();
$datetime->setTimestamp($timestamp);
$datetime->modify('-7 day');
echo $datetime->format("Y-m-d"); //2015-03-18
Share:
59,552
Mike Crittenden
Author by

Mike Crittenden

Web developer and Drupal nut in Greenville, SC. Want to hire me for Drupal work? Of course you do!

Updated on September 18, 2020

Comments

  • Mike Crittenden
    Mike Crittenden over 3 years

    I need to calculate the timestamp of exactly 7 days ago using PHP, so if it's currently March 25th at 7:30pm, it would return the timestamp for March 18th at 7:30pm.

    Should I just subtract 604800 seconds from the current timestamp, or is there a better method?

  • starbeamrainbowlabs
    starbeamrainbowlabs almost 10 years
    @AndrewBarber The answer may have been edited, but this answer does not appear to include a link to anything.
  • Sanjay
    Sanjay over 8 years
    You have typo strotime for strtotime .. :) too early just 5 yrs ago .. .:D