PHP中的maketime函數是很常用的一個日期時間函數,它的作用是根據傳入的參數返回對應的時間戳。使用maketime函數,我們可以很方便地進行日期時間的計算和處理,比如計算某個時間之前或之后的時間,或者將時間轉換為時間戳進行存儲和比較等等。
下面是maketime函數的基本用法:
maketime($hour, $minute, $second, $month, $day, $year);
傳入的參數分別代表小時,分鐘,秒鐘,月份,日號和年份,其中小時、分鐘和秒鐘是可選的參數,如果不傳入,默認為0。下面是幾個例子:
// 返回當前時間的時間戳 $now = maketime(); // 返回2019年1月1日0時0分0秒的時間戳 $startOfYear = maketime(0, 0, 0, 1, 1, 2019); // 返回2000年1月1日0時0分0秒的時間戳 $millennium = maketime(0, 0, 0, 1, 1, 2000); // 返回今天下午3點12分10秒的時間戳 $now = maketime(15, 12, 10);
除了基本用法之外,maketime函數還支持傳入時間字符串的方式來獲取對應的時間戳。下面是一個例子:
// 返回2020年3月4日下午2時30分的時間戳 $timestamp = maketime('2020-03-04 14:30:00');
除了傳入指定的日期時間參數之外,maketime函數還支持使用“相對時間”來計算時間戳。相對時間的概念是指當前時間的基礎上,加上或減去一定的時間間隔來計算新的時間。下面是一些常見的相對時間格式:
- 1 week ago(一周前)
- 2 days ago(兩天前)
- 1 month later(一月后)
- 1 year ago(一年前)
下面是一個根據相對時間計算時間戳的例子:
// 返回7天前的時間戳 $timestamp = maketime('7 days ago');
除了直接計算時間戳之外,maketime函數還支持將時間戳轉換為字符串格式。下面是一個例子:
// 將時間戳轉換為字符串 $format = 'Y-m-d H:i:s'; $timestamp = time(); $timeStr = date($format, $timestamp);
最后要注意的是,maketime函數返回的時間戳都是基于UNIX時間的。UNIX時間是指自1970年1月1日以來經過的秒數,在計算機系統和網絡通信中廣泛使用。