gmmktime
そふぃのPHP入門 >> PHP関数リファレンス >> 日付・時刻関数 >> gmmktime

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タイムスタンプ

PHPマニュアル:gmmktime gmmktime()

gmmktime()関数:概略解説

gmmktime()は引数で指定したGMT日時のタイムスタンプを取得します。mktime()関数との違いは引数にGMTを使用する事で、GMT時刻からタイムゾーンのタイムスタンプを得る事ができます。

gmmktime()関数:返り値解説

GMTで指定した日時のタイムスタンプ

gmmktime()関数:引数解説

hour
時をGMTで指定します。
minute
分をGMTで指定します。
second
秒をGMTで指定します。
month
月をGMTで指定します。
day
日をGMTで指定します。
year
年をGMTで指定します。
is_dstサマータイムフラグ
サマータイムフラグの指定です。サマータイムなら1そうでなければ0不明の時は-1が指定されます。

gmmktime()関数:注意

gmmktime()では、サマータイム以外の引数を省略するのは注意が必要です。引数を省略した場合は現在時刻の値が適用されるのですが、適用される現在時刻はGMTの値ではなくサーバ内部のタイムゾーンに従った値だからです。つまり、下手に省略するとGMTの値とタイムゾーンの値がごちゃごちゃになりますので期待したタイムスタンプ値を得られない事も考えられます。

gmmktime()関数:その他

その他詳しい使用方法はmktime()関数をご覧下さい。

参考関数

  • mktime() ---- 指定した日時のUNIXタイムスタンプを取得する

サンプルスクリプト

簡単な利用例

  1. <?php
  2. // 現在時刻の各値をGMTとして取得
  3. $hour = gmdate("H");
  4. $minute = gmdate("i");
  5. $second = gmdate("s");
  6. $month = gmdate("n");
  7. $day = gmdate("j");
  8. $year = gmdate("Y");
  9.  
  10. // GMTからタイムスタンプを生成
  11. $timestamp = gmmktime($hour, $minute, $second, $month, $day, $year);
  12.  
  13. echo "GMT時間:".gmdate("Y/m/d H:i:s", $timestamp)."<br />\n";
  14. echo "日本時間:".date("Y/m/d H:i:s");
  15. ?>

出力結果

GMT時間:2017/08/17 11:23:44
日本時間:2017/08/17 20:23:44