1.PHP 的 date() 函數用于格式化時間或日期。
1.1 Date() 函數可把時間戳記格式化為可讀性更好的日期和時間。
文法:
date(format,timestamp)
其中:
format:必需。規定時間戳記的格式。
timestamp:可選。規定時間戳記。預設是當前的日期和時間。
1.2 日期 - 什麼是時間戳記(TimeStamp)
時間戳記是自 1970 年 1 月 1 日(00:00:00 GMT)以來的秒數。它也被稱為 Unix 時間戳記(Unix Timestamp)。
1.3 日期 - 格式化日期
date() 函數的第一個參數規定了如何格式化日期/時間。它使用字母來表示日期和時間的格式。這裡列出了一些可用的字母:
可以在字母之間插入其他字元,比如 "/"、"." 或者 "-",這樣就可以增加附加格式了:
<?phpecho date("Y/m/d");echo "<br />";echo date("Y.m.d");echo "<br />";echo date("Y-m-d");?>
以上代碼的輸出類似這樣(今天的日期):
2013/02/02
2013.02.02
2013-02-02
1.4 日期 - 新增時間戳記
date() 函數的第二個參數規定了一個時間戳記。此參數是可選的。如果您沒有提供時間戳記,當前的時間將被使用。
在我們的例子中,我們將使用 mktime() 函數為明天建立一個時間戳記。
mktime() 函數可為指定的日期返回時間戳記。
文法:
mktime(hour,minute,second,month,day,year,is_dst);
如需獲得某一天的時間戳記,我們只要設定 mktime() 函數的 day 參數就可以了:
<?php$tomorrow = mktime(0,0,0,date("m"),date("d")+1000,date("Y"));echo "1000天后是 ".date("Y/m/d", $tomorrow);?>
如果不能顯示中文,請在代碼編輯器裡面把編碼方式改成UTF-8(或者gb2312)同時添加編碼聲明:
<META http-equiv="content-type" content="text/html; charset=gb2312">
以上代碼的輸出類似這樣:1000天后是 2015/10/30
可以用這種方式計算各種紀念日。
結合上一次的博文:[PHP]從HelloWorld開始的基本文法入門教程
寫了一個Demo版本的《女友紀念日計算機》:
<html><body><form action="welcome.php" method="get">Year:<input type="text" name="year" /><br/>Month:<input type="text" name="month" /><br/>Day:<input type="text" name="day" /><br/><br/>Calculate Days: <input type="text" name="days" /><br/><input type="submit" name="Go!"/></form></body></html>
跳轉到的頁面welcom.php指令碼如下:
<?php$the_day = mktime(0,0,0,$_GET["month"],$_GET["day"]+$_GET["days"],$_GET["year"]);echo $_GET["days"].' days later is '.date("Y/m/d", $the_day);?>
填寫好紀念日的年月日和想要算的日期間隔,就能算出各種紀念日啦。
比如輸入:2012
06 29 222
這樣就能算出結果:222 days later is 2013/02/06