php日期
PHP 日期和時(shí)間
PHP date() 函數(shù)用於對日期或時(shí)間進(jìn)行格式化。
PHP Date() 函數(shù)
PHP Date() 函數(shù)把時(shí)間戳格式化為更容易讀取的日期和時(shí)間。
#註解:時(shí)間戳記是一種字元序列,它表示特定事件發(fā)生的日期和事件。
獲得簡單的日期
date() 函數(shù)的格式參數(shù)是必要的,它們規(guī)定如何格式化日期或時(shí)間。
下面列出了一些常用於日期的字符:
·???????? d - 表示月裡的某天(01-31)
·???????? m - 表示月(011 -12)
·???????? Y - 表示年(四位數(shù))
·???????? 1 - 表示周中的某天
其他字符,如"/", ". " 或"-" 也可插入字元中,以增加其他格式。
下面的範(fàn)例用三種不同方法格式今天的日期:
#實(shí)例
<?php echo "今天是 " . date("Y/m/d") . "<br>"; echo "今天是 " . date("Y.m.d") . "<br>"; echo "今天是 " . date("Y-m-d") . "<br>"; echo "今天是 " . date("l"); ?>
PHP 提示- 自動(dòng)版權(quán)年份
使用date() 函數(shù)在您的網(wǎng)站上自動(dòng)更新版本年份:
實(shí)例
#? 2010-<?php echo date("Y")?>
獲得簡單的時(shí)間
以下是常用時(shí)間的字元:
·???????? h - 以首位零的12 小時(shí)小時(shí)格式
·???????? i -附首零的分鐘
·???????? s - 有首位零的秒(00 -59)
·???????? a - 小寫的午前與午後(am 或pm 或pm)##am 或pm #下面的範(fàn)例以指定的格式輸出目前時(shí)間:
實(shí)例
<?php echo "現(xiàn)在時(shí)間是 " . date("h:i:sa"); ?>
註解:請注意PHP date() 函數(shù)會(huì)傳回伺服器的目前日期/時(shí)間!
取得時(shí)區(qū)如果從程式碼回傳的不是正確的時(shí)間,有可能是因?yàn)槟乃欧魑混镀渌麌一虮辉O(shè)定為不同時(shí)區(qū)。
因此,如果您需要基於特定位置的準(zhǔn)確時(shí)間,您可以設(shè)定要使用的時(shí)區(qū)。
下面的範(fàn)例把時(shí)區(qū)設(shè)定為"Asia/Shanghai",然後以指定格式輸出目前時(shí)間:
實(shí)例
<?php date_default_timezone_set("Asia/Shanghai"); echo "當(dāng)前時(shí)間是 " . date("h:i:sa"); ?>
透過PHP mktime() 建立日期
date() 函數(shù)中可選的時(shí)間戳參數(shù)規(guī)定時(shí)間戳記。如果您未規(guī)定時(shí)間戳,將使用當(dāng)前日期和時(shí)間(正如上例中)。
mktime() 函數(shù)傳回日期的 Unix 時(shí)間戳記。 Unix 時(shí)間戳包含 Unix 紀(jì)元(1970 年 1 月 1 日 00:00:00 GMT)與指定時(shí)間之間的秒數(shù)。
語法
mktime(hour,minute,second,month,day,year)
下面的範(fàn)例使用mktime() 函數(shù)中的一系列參數(shù)來建立日期和時(shí)間:
實(shí)例
<?php $d=mktime(9, 12, 31, 6, 10, 2015); echo "創(chuàng)建日期是 " . date("Y-m-d h:i:sa", $d); ?>
透過PHP strtotime() 用字串來建立日期
PHP strtotime() 函數(shù)用來把人類可讀的字串轉(zhuǎn)換為Unix 時(shí)間。
語法
strtotime(time,now)
下面的範(fàn)例透過strtotime() 函數(shù)建立日期和時(shí)間:
實(shí)例
<?php $d=strtotime("10:38pm April 15 2015"); echo "創(chuàng)建日期是 " . date("Y-m-d h:i:sa", $d); ?>
PHP 在將字串轉(zhuǎn)換為日期這方面非常聰明,所以您能夠使用各種值:
實(shí)例
<?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() 並不完美,所以請記得檢查放入其中的字串。
更多日期實(shí)例
下例輸出下週六的日期:
實(shí)例
<?php $startdate = strtotime("Saturday"); $enddate = strtotime("+6 weeks",$startdate); while ($startdate < $enddate) { echo date("M d", $startdate),"<br>"; $startdate = strtotime("+1 week", $startdate); } ?>
下例輸出七月四日之前的天數(shù):
實(shí)例
<?php $d1=strtotime("December 31"); $d2=ceil(($d1-time())/60/60/24); echo "距離十二月三十一日還有:" . $d2 ." 天。"; ?>