2011-07-31 84 views
0

我試圖通過執行以下操作來獲取php中的下一分鐘值。php mktime AMPM值錯誤

$one_minute_later = mktime(date("g"), date("i")+1, date("s"), date("n"), date("j"), date("Y")); 

$send_month = date("n", $one_minute_later); // Numeric representation of a month, without leading zeros 

$send_day = date("j", $one_minute_later); // Day of the month without leading zeros  

$send_year = date("Y", $one_minute_later); 

$send_hour = date("g", $one_minute_later); // 12-hour format of an hour without leading zeros 

$send_minute = date("i", $one_minute_later); // Minutes with leading zeros 00 to 59 

$send_ampm = date("A", $one_minute_later); 

但是,這樣做總是會返回AMP的值AM。任何想法爲什麼?例如,當我在下午6:00運行此代碼時,一分鐘後應該返回6:01 PM。但是,它正在返回6:01 AM。

回答

1

因爲mktime工作24小時。也許你已經注意到它不需要AM/PM參數?這是因爲小時參數代表24小時制時間,而不是12個。使用date('H')代替date('g')

或者,只需使用time() + 60進行整個操作。

+0

你說得對!我完全錯過了。謝謝你快速回答Deceze。對此,我真的非常感激。 –