gmmktime
解説 | GMTで指定した日時のUNIXタイムスタンプを取得する |
---|---|
書式 | int gmmktime( [ int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst ]]]]]]] ) |
int gmmktime( [ int 時 [, int 分 [, int 秒 [, int 月 [, int 日 [, int 年 [, int サマータイムフラグ ]]]]]]] ) |
|
引数 |
hour
時
|
minute
分
|
|
second
秒
|
|
month
月
|
|
day
日
|
|
year
年:2桁または4桁で指定
|
|
is_dst
サマータイムなら1 違うなら0 不明なら-1
|
|
返値 | 指定した日時のタイムゾーンをGMTに合わせたUNIXタイムスタンプ |
GMTで指定した日時のタイムスタンプ
hour
時時をGMTで指定します。
minute
分分をGMTで指定します。
second
秒秒をGMTで指定します。
month
月月をGMTで指定します。
day
日日をGMTで指定します。
year
年年をGMTで指定します。
is_dst
サマータイムフラグサマータイムフラグの指定です。サマータイムなら1そうでなければ0不明の時は-1が指定されます。
※gmmktime()では、サマータイム以外の引数を省略するのは注意が必要です。引数を省略した場合は現在時刻の値が適用されるのですが、適用される現在時刻はGMTの値ではなくサーバ内部のタイムゾーンに従った値だからです。つまり、下手に省略するとGMTの値とタイムゾーンの値がごちゃごちゃになりますので期待したタイムスタンプ値を得られない事も考えられます。
その他詳しい使用方法はmktime()関数をご覧下さい。
参考関数
- mktime() ---- 指定した日時のUNIXタイムスタンプを取得する
サンプルスクリプト
簡単な利用例
- // 現在時刻の各値をGMTとして取得
- $hour = gmdate("H");
- $minute = gmdate("i");
- $second = gmdate("s");
- $month = gmdate("n");
- $day = gmdate("j");
- $year = gmdate("Y");
- // GMTからタイムスタンプを生成
- $timestamp = gmmktime($hour, $minute, $second, $month, $day, $year);
- echo "GMT時間:".gmdate("Y/m/d H:i:s", $timestamp)."<br />\n";
- echo "日本時間:".date("Y/m/d H:i:s");
出力結果
GMT時間:2019/02/18 15:59:33
日本時間:2019/02/19 00:59:33
日本時間:2019/02/19 00:59:33