看板 PHP 關於我們 聯絡資訊
※ 引述《mydoc (mydoc)》之銘言: : 小的查到可以用strtotime()來做日期相減求得秒數, : 但我想要的是如2013-8-12 00:00:00減去2013-8-11 23:59:59 : 不應該算1秒而是算成1天,因為就一般認知是這作為一個分水嶺分辨昨天跟今天的差別 : 那我可以透過PHP或MYsql辦到嗎? $time1 = strtotime('2013-08-12 00:00:00'); $time2 = strtotime('2013-08-11 23:59:59'); echo date('z', $time1 - $time2); 根據 http://www.php.net/manual/en/function.date.php z 是顯示一年當中的第 n 天(從 0 開始) 也就是說你的時間範圍超過一年就爆炸了(值最多就 365) 所以還得再多加判斷超過一年的處理方式 時間都在一年內就算了,超過一年也太不 make sense... 不如就土法煉剛... $time = ($time1 - $time2) / 86400; 這樣就沒有超過一年的限制了... 還是其實真的有內建 function 可以這樣算我沒發現@@? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.113.39
mydoc:了解,謝謝了 08/11 11:15
mydoc:這個方法好像沒辦法處理小於一天耶...不過我透過這想到把 08/11 11:58
mydoc:$time1 = strtotime(date('Y-m-d 00:00:00))來做時間截記... 08/11 11:59
mydoc:$time 2 = strtotime(某一date)相減 08/11 12:00
mydoc:$time = ($time1 - $time2)/86400 08/11 12:00
mydoc:小於0是今天大於0小於1是昨天 08/11 12:01
mydoc:不知有沒有想錯? 08/11 12:01
noxhsu:DateTime::diff 或 date_diff? 我是習慣直接操做資料庫處理 08/11 15:34
noxhsu:像是 TIMESTAMPDIFF(DAY, date1, date2)這樣 08/11 15:35
cwlin0416:要看你strtotime裡的時有沒有時分秒,如果$time1是今天 09/22 13:09
cwlin0416:的確如你所說 09/22 13:10