php中,date( ) 函數用於格式化日期和時間。語法:date(format,timestamp)。第一個參數必需,規定時間顯示的格式。第二個參數可選,表示時間,省略時表示默認當前時間。php
<?php header("content-type: text/html;charset=utf-8"); echo date("Y年m月d日 H:i:s"); ?>
上段代碼的意思是用「Y年m月d日 H:i:s」的格式顯示當前時間,我當前時間下輸出的結果是2017年10月15日 19:04:32。 其中,html
Y表示年(四位數);函數
y表示年(兩位);測試
m表示月(01-12,兩位);code
d表示月份中的某一日(01-31,兩位);orm
l 表示星期幾;htm
H表示二十四小時制的時(兩位);utf-8
h表示十二小時制的時(兩位);字符串
i表示帶有首位零的分鐘(兩位);form
s 表示秒(00-59,兩位);
a 小寫的上午和下午(am或pm)
設置時區,我在mac系統上測試日期時必需先設置時區。在Windows系統下沒設置時區也沒報錯,這裏瞭解一下。
mktime(時,分,秒,月,日,年),包含六個參數,分別是 時、分、秒、月、日、年。該函數返回的結果是一個時間戳。它是當前時間到1970年1月1日的秒數。所以,能夠用mktime()函數設置時間,而後用date()函數格式化時間。具體能夠參考下一段代碼(2008年08月08日 08:08:08):
<?php header("content-type: text/html;charset=utf-8"); date_default_timezone_set("Asia/Shanghai"); $d=mktime(8, 8, 8, 8, 8, 2008); // hour min sec month day year echo date("Y年m月d日 H:i:s", $d); ?>
strtotime(時間字符串),這裏參數字符串必需嚴格按照固定的格式: 如,「2008-08-08 08:08:08」。該函數的返回結果是一個時間戳,能夠使用date( )函數來格式化時間格式。
<?php header("content-type: text/html;charset=utf-8"); date_default_timezone_set("Asia/Shanghai"); $d=strtotime("2008-08-08 08:08:08"); // 固定的字符串格式 echo date("Y年m月d日 H:i:s", $d); echo "<br/>"; ?>
關於前n天后n天的問題,只需改變$d的值(單位是秒)。如,$d+=24*60*60。此時表示日期加1 。