web-dev-qa-db-ja.com

PHPでちょうど1週間前のタイムスタンプを取得しますか?

PHPを使用してちょうど7日前のタイムスタンプを計算する必要があるため、現在3月25日の午後7時30分である場合、3月18日の午後7時30分にタイムスタンプを返します。

現在のタイムスタンプから604800秒を差し引くだけですか、それともより良い方法がありますか?

37
Mike Crittenden
strtotime("-1 week")
81
SilentGhost

strtotime はあなたの友達です

echo strtotime("-1 week");
26
Ben Everard

http://php.net/strtotime

echo strtotime("-1 week");
11
Aaron W.

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

最初の(または最後の)行で+を-に変更すると、必要なものが得られます。

9
Luís Guilherme

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
4
Paweł Tomkiel
<?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);
0
Navdeep Singh