2011-12-14 68 views
4

與此類似question,但沒有回答我的具體問題。傳遞的strtotime()函數中的變量PHP

當前日期是2011-12-14,對於在參考的情況下這個問題在將來觀看。

我嘗試這樣做:

$maxAge = $row['maxAge']; // for example, $row['maxAge'] == 30 
$cutoff = date('Y-m-d', strtotime('-$maxAge days')); 

而且它$cutoff: 1969-12-31

返回下面的價值,我想這:

$maxAge = $row['maxAge']; // for example, $row['maxAge'] == 30 
$cutoff = date('Y-m-d', strtotime('-' . $maxAge . ' days')); 

它返回$cutoff: 2011-03-14

以下值

如何傳遞這個變量成功LY到strtotime()功能,使得它計算的天量,以正確的減?

例如,如果$maxAge == 30和當前日期爲2011-12-14,那麼$cutoff應該2011-11-14

回答

13

使用雙引號:

date('Y-m-d', strtotime("-$maxAge days")); 
+0

我現在就愛你 – 2017-06-01 20:43:09

4

使用雙引號:

$cutoff = date('Y-m-d', strtotime("-$maxAge days")); 

不過,如果你是不使用的strtotime做簡單的計算這樣,你可以簡單的代碼,像這樣:

$date = getdate(); 
$cutoff = date('Y-m-d', mktime(0, 0, 0, $date['mon'], $date['mday'] - $maxAge, $date['year'])); 
echo $cutoff;