在看 PHP mktime 函數的語法之前,我們先說明一下為什麼會需要 UNIX 時間戳,根據 WIbibi 網頁上的這篇《PHP timestamp 時間戳》說明,所謂的 UNIX 時間戳是指某個時間點與 UNIX 紀元(西元1970年1月1日00:00:00)的相差秒數,當我們需要計算兩個時間差時,這個 UNIX 時間戳就非常好用,而 mktime 就是幫助我們取得這個時間戳的好工具,PHP 的 time 函數也可以做到。
接著我們就開始看 PHP mktime 函數的語法規則與實際範例。
PHP mktime 函數語法規則
int mktime( int $hour , int $minute , int $second , int $month , int $day , int $year , int $is_dst );
- $hour - 時
- $minute - 分
- $second - 秒
- $month - 月
- $day - 日
- $year - 年
PHP mktime 函數的實際操作範例範例的輸出結果長這樣(僅供示意,非實際時間)
1416203567
1416203567
1416203567
我們準備了三個 PHP mktime 函數的實際範例,第一個 mktime 所有參數都用 date 去讀取伺服器的時間,第二個參數則是我們手動自己將時間填入 mktime 去轉換,第三個 mktime 不用 date 讀取伺服器時間也不用我們填寫,讓 mktime 自己去讀取伺服器的時間,這三個範例都可以轉換出相同的 UNIX 時間戳。1416203567
1416203567
PHP mktime 函數的自動修正功能輸出結果
Feb-15-2015
PHP mktime 函數具有自動修正錯誤的功能,例如我們故意把錯誤的時間放入 mktime 參數中,月份寫 14,可是實際上一年只有 12 個月,換句話說,故意錯誤超過 2 個月,mktime 函數自動將"年"往後推至 2015 年的二月 15 日(Feb-15-2015),這就是 mktime 函數強大的自動時間錯誤修正功能。更多 PHP 時間計算