使用mktime 函式取得乙個日期的時間戳

2021-07-11 14:34:26 字數 1395 閱讀 5139

2.8.3 使用mktime 函式取得乙個日期的時間戳

mktime 函式用於取得乙個日期的unix 時間戳,其宣告如下:

int mktime ( [int hour [, int minute [, int second [, int month [, int day

[, int year [, int is_dst]]]]]]] )

根據給出的引數返回unix 時間戳。時間戳是乙個長整數,包含了從unix 紀元(january

1 1970 00:00:00 gmt)到給定時間的秒數。

引數可以從右向左省略,任何省略的引數會被設定成本地日期和時間的當前值。

引數的含義如下。

hour:小時數。

minute:分鐘數。

second:秒數(1min 之內)。

month:月份數。

day:天數。

year:年份數,可以是兩位或四位數字,0~69 對應於2000~2069,70~100 對應於1970~

2000。在如今系統中普遍把time_t 作為乙個32 位有符號整數的情況下,year 的合法範圍是

1901 到2038 之間,不過此限制自php 5.1.0 起已被克服了。

is_dst:本引數可以設為1,表示正處於夏時制時間(dst),0 表示不是夏時制,或者−1

(預設值)表示不知道是否是夏時制。如果未知,php 會嘗試自己搞明白。這可能產生不可

預知(但並非不正確)的結果。如果php 執行的系統中啟用了dst 或者is_dst 設為1,某些

時間是無效的。例如dst 自2:00 生效,則所有處於2:00 到3:00 之間的時間都無效,mktime()

會返回乙個未定義(通常為負)的值。某些系統(例如solaris 8)的dst 在午夜生效,則

dst 生效當天的0:30 會被計算為前一天的23:30。

下面通過兩個小例項來介紹mktime()函式的應用。

例如下面例子中每一行都會產生字串「jan-01-1998」。

">

<?php

echo date("m-d-y", mktime(0, 0, 0, 12, 32, 1997));

echo '

';echo date("m-d-y", mktime(0, 0, 0, 13, 1, 1997));

echo '

';echo date("m-d-y", mktime(0, 0, 0, 1, 1, 1998));

echo '

';echo date("m-d-y", mktime(0, 0, 0, 1, 1, 98));

echo '

';?>

jan-01-1998

jan-01-1998

jan-01-1998

jan-01-1998

C語言 用mktime函式獲取乙個日期是星期幾

include include memset函式所在標頭檔案 include void main tm wday為0表示星期日 struct tm info memset info,0,sizeof info 將所有成員的值設為0 info.tm year 2013 1900 年份必須減去1900 ...

mktime很慢就自己去實現乙個吧

標籤 空格分隔 linux c語言 根據後面自己的測試和前輩說的總結下 include include 字串時間 yyyymmdd hh mm mm 轉換為struct tm結構 void str to tm char p time,struct tm m tm else 時間結構轉換為時間戳 ti...

mysql取得乙個表的列名

mysql取得乙個表的列名 方法為 describe tb nine safety info 縮寫為 desc tb nine safety info show columns from tb nine safety info select column name from information ...