您好,登錄后才能下訂單哦!
本篇內容主要講解“php如何判斷兩個時間戳是不是一天”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“php如何判斷兩個時間戳是不是一天”吧!
php判斷兩個時間戳是不是一天的實現方法:1、創建一個php示例文件;2、設置“int time_zone = 8, daily_reset_time = 5;”;3、通過“bool IsTimeToReset(time_t last_reset_time, time_t cur_time){...}”方法實現判斷即可。
判斷2個時間戳是不是同一天
思路分析
判斷2個時間戳是否不在同一天,只需要將2天各自的絕對秒數除以24 * 3600得到從epoch到現在過了多少天 然后兩個結果如果相差大于0,表明不是同一天,需要重置。 但需要考慮2個因素:
一是當前時間減去設定的重置時間點(比如每天的5點),因為是5點重置,減去5*3600,確保當前的時間大于等于重置的時間點,即當天的5點。
二是絕對秒數加上對應的時區對應的那部分時間戳,這樣得到的時間是對應當地時間的。 舉例來說,不加時區的時間,得到的是從格林威治時間1970年1月1日00:00:00以來的第幾天,北京時間比格林威治時間早8小時,那么如果是格林威治時間的16點,對應的就是北京時間的第二天的零點,而時間上我們要算的就是對應這個時區的時間對應的天數的差值,所以要加上時區。 導致的時間,即time_zone * 3600
代碼實現
int time_zone = 8, daily_reset_time = 5; time_t BetweenDays(time_t time1, time_t time2) { return (time1 + time_zone *3600)/3600/24 - (time2 + time_zone *3600)/3600/24; } /* * last_reset_time 為上次執行的每日重置時間 * cur_time 為當前時間 */ bool IsTimeToReset(time_t last_reset_time, time_t cur_time) { return BetweenDays(cur_time - 3600 * daily_reset_time, last_reset_time - 3600 * daily_reset_time) > 0; }
php,一個嵌套的縮寫名稱,是英文超級文本預處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種 HTML 內嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在服務器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似于C語言,現在被很多的網站編程人員廣泛的運用。
到此,相信大家對“php如何判斷兩個時間戳是不是一天”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。