2013-01-10 66 views
0

是否有一個簡單的直接方式來找到開始日期之間的剩餘時間 - 例如:2013-01-10 12:34:55和5分鐘後?PHP服務器端超時檢查

我的意思是我有開始日期,並希望檢查5分鐘或60分鐘後的時間差異爲0.在服務器端檢查時間的種類。

回答

1

您有2個日期,對嗎?

$date1 = strtotime('2013-01-10 12:34:33'); // converto to time 
$date2 = strtotime('2013-01-10 12:45:33'); // or else it won't work 
$diff = date('u', $date1) - date('u', $date2); // the difference in seconds between the two 
// if you want $date2 to be now, just use date('u') 
if ($diff > 3600) { // an hour later 
    echo 'The difference between $date1 and $date2 is more than an hour'; 
} 
+0

感謝您的幫助!您的解決方案僅適用於幾項更改,但這正是我所尋找的。再次感謝! – McRui

0

如果您想爲用戶執行類似「會話超時」的操作。使用Javascript setintervel()並執行ajax()調用以從應用程序中註銷用戶。

+0

蘇雷什嗨,我已經使用jQuery,可以在秒(秒)設定的時間間隔,分鐘(分),時間(小時)的天數(天)等。和會話來執行客戶端驗證,但作爲失敗保險箱,建議在服務器端進行「硬」驗證,然後才能將任何數據存儲在數據庫中。我喜歡認爲所有的過濾器都不足以確保存儲最可靠和更新的數據。謝謝 – McRui

0

嗯,好像我要去的路更難發現......這將是更容易和更可靠的從一個SQL檢查比PHP得到它。 我已經成功實現了這一點。留在這裏以防萬一它可能有用。

$query = "SELECT * FROM db_table 
WHERE DATE_ADD(my_start_date, INTERVAL 5 MINUTE) > NOW()"; 

其中5是