設定時間:mktime()
date()可做時間輸出的格式化,那可否設定時間呢?
mktime()就是負責這一件工作、
我們可以在mktime()內設定。我們來看mktime的格式:
mktime (小時,分鐘,秒數,月份,日期, 年份, 夏天日光節約時間)
由範例就可知道參數的用途。首先,關於年-月-日的表示方式:
01: <html><head>
02: <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
03: <title> mktime1</title></head>
04: <body><?
05: $day1 = mktime(0, 0, 0, 1, 2, 1970);
06: echo $day1."<br>";
07: $day2 = mktime(0, 0, 0, 4, 30, 2008);
08: echo $day2."<br>";
09: ?></body></html>
但他輸出的值是從1970年1月1日開始,那一天是Unix誕生的日子。
我們要如何才能顯示出年月日呢?這時就需要date( )函數了。前一小節裡,我們透過
date( )函數將現在Server的時間以不同格式輸出,現在date()搭配mktime(),就可選擇特
定的時間做特定的輸出:
01: <html><head>
02: <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
03: <title>mktime2</title></head>
04: <body><?
05: echo "2008年3月12日是週幾呢?是".date ("l", mktime(0,0,0,3,12,2008));
06: $tomorrow = mktime (0,0,0,date("m") ,date("d")+1,date("Y"));
07: $lastmonth = mktime (0,0,0,date("m")-1,date("d"), date("Y"));
08: $nextyear = mktime (0,0,0,date("m"), date("d"), date("Y")+1);
09: echo "明天是:".date("Y-m-j",$tomorrow)."<br>";
10: echo "上個月是:".date("Y-m-j",$lastmonth)."<br>";
11: echo "明年是:".date("Y-m-j",$nextyear)."<br>";
12: ?> </body></html>
適當地使用系統提供的函數,就可以加快網頁程式的撰寫與降低寫錯的機率
。但要提醒各位一點,PHP抓取的時間是Server的時間,而不是本機的時間,
所以如果Server放在美國,但您在台灣上網,顯示的時間會是美國時間,而
不是台灣的時間,如果要抓取使用者電腦的時間,就要使用java script,而
非PHP。
沒有留言:
張貼留言