我目前使用PHP ROUND
,ABS
,STRTOTIME
來計算兩個日期之間的差異。PHP strtotime全年而不是一天返回
計算將一直運行,直到您從新的一年中選擇$_SESSION['b_checkout']
。即如果b_checkin
是Dec 30而b_checkout
是Dec 31,則這返回正確的$no_nights
爲1天。
$_SESSION['b_checkin']
和$_SESSION['b_checkout']
正在使用'D F jS Y'
日期格式。例如
$_SESSION['b_checkin'] = "Wednesday, 31 December, 2014"
$_SESSION['b_checkout'] = "Thursday, 1 January, 2015"
$no_nights = round(abs(strtotime($_SESSION['b_checkout']) - strtotime($_SESSION['b_checkin']))/(60*60*24));
目前這個輸出(echo $no_nights
)363天,而不是1天。問題是什麼?
您的日期不適用於'strtotime' - >'strtotime(string $ time)time日期/時間字符串。有效格式在[日期和時間格式](http://php.net/manual/en/datetime.formats.date.php)中說明' – Sean 2014-11-05 04:39:51