PHP 日期和時間
- 上一頁 PHP 多維數組
- 下一頁 PHP Include
PHP date() 函數用于對日期或時間進行格式化。
PHP Date() 函數
PHP Date() 函數把時間戳格式化為更易讀的日期和時間。
語法
date(format,timestamp)
參數 | 描述 |
---|---|
format | 必需。規定時間戳的格式。 |
timestamp | 可選。規定時間戳。默認是當前時間和日期。 |
注釋:時間戳是一種字符序列,它表示具體事件發生的日期和事件。
獲得簡單的日期
date() 函數的格式參數是必需的,它們規定如何格式化日期或時間。
下面列出了一些常用于日期的字符:
- d - 表示月里的某天(01-31)
- m - 表示月(01-12)
- Y - 表示年(四位數)
- 1 - 表示周里的某天
其他字符,比如 "/", "." 或 "-" 也可被插入字符中,以增加其他格式。
下面的例子用三種不同方法格式今天的日期:
實例
<?php echo "今天是 " . date("Y/m/d") . "<br>"; echo "今天是 " . date("Y.m.d") . "<br>"; echo "今天是 " . date("Y-m-d") . "<br>"; echo "今天是 " . date("l"); ?>
獲得簡單的時間
下面是常用于時間的字符:
- h - 帶有首位零的 12 小時小時格式
- i - 帶有首位零的分鐘
- s - 帶有首位零的秒(00 -59)
- a - 小寫的午前和午后(am 或 pm)
下面的例子以指定的格式輸出當前時間:
實例
<?php echo "現在時間是 " . date("h:i:sa"); ?>
注釋:請注意 PHP date() 函數會返回服務器的當前日期/時間!
獲得時區
如果從代碼返回的不是正確的時間,有可能是因為您的服務器位于其他國家或者被設置為不同時區。
因此,如果您需要基于具體位置的準確時間,您可以設置要用的時區。
下面的例子把時區設置為 "Asia/Shanghai",然后以指定格式輸出當前時間:
實例
<?php date_default_timezone_set("Asia/Shanghai"); echo "當前時間是 " . date("h:i:sa"); ?>
通過 PHP mktime() 創建日期
date() 函數中可選的時間戳參數規定時間戳。如果您未規定時間戳,將使用當前日期和時間(正如上例中那樣)。
mktime() 函數返回日期的 Unix 時間戳。Unix 時間戳包含 Unix 紀元(1970 年 1 月 1 日 00:00:00 GMT)與指定時間之間的秒數。
語法
mktime(hour,minute,second,month,day,year)
下面的例子使用 mktime() 函數中的一系列參數來創建日期和時間:
實例
<?php $d=mktime(9, 12, 31, 6, 10, 2015); echo "創建日期是 " . date("Y-m-d h:i:sa", $d); ?>
通過 PHP strtotime() 用字符串來創建日期
PHP strtotime() 函數用于把人類可讀的字符串轉換為 Unix 時間。
語法
strtotime(time,now)
下面的例子通過 strtotime() 函數創建日期和時間:
實例
<?php $d=strtotime("10:38pm April 15 2015"); echo "創建日期是 " . date("Y-m-d h:i:sa", $d); ?>
PHP 在將字符串轉換為日期這方面非常聰明,所以您能夠使用各種值:
實例
<?php $d=strtotime("tomorrow"); echo date("Y-m-d h:i:sa", $d) . "<br>"; $d=strtotime("next Saturday"); echo date("Y-m-d h:i:sa", $d) . "<br>"; $d=strtotime("+3 Months"); echo date("Y-m-d h:i:sa", $d) . "<br>"; ?>
不過,strtotime() 并不完美,所以請記得檢查放入其中的字符串。
更多日期實例
下例輸出下周六的日期:
實例
<?php $startdate = strtotime("Saturday"); $enddate = strtotime("+6 weeks",$startdate); while ($startdate < $enddate) { echo date("M d", $startdate),"<br>"; $startdate = strtotime("+1 week", $startdate); } ?>
下例輸出七月四日之前的天數:
實例
<?php $d1=strtotime("December 31"); $d2=ceil(($d1-time())/60/60/24); echo "距離十二月三十一日還有:" . $d2 ." 天。"; ?>
- 上一頁 PHP 多維數組
- 下一頁 PHP Include