mktime

mktime -- 日付を UNIX のタイムスタンプとして取得する

説明

int mktime(int hour, int minute, int second, int month, int day, int year, int [is_dst]);

警告: 引数の順番が、通常の UNIX mktime() の引数の順番と 異なっていることに注意して下さい。 このことは、(以下に示すように)パラメータを右から左に 省略出来るようにすることに役立っているわけではありません。 これらの値をスクリプトで混用するというのは、ありがちなエラーです。

与えられた引数に従って UNIX のタイムスタンプを返します。 このタイムスタンプは、Unix epoch(1970 年 1 月 1 日)から 指定された時刻までの通算秒を表す長整数です。

引数は右から順に省略することができます。省略された引数は、 ローカルの日付と時刻に従って、現在の値にセットされます。

is_dst はサマータイムの時に1にセットされ、そうで ない時に0に、サマータイムであるかどうかが不明である場合に-1にセット されます。

注意: is_dst は 3.0.10 で追加されました。

mktime は入力日付の有効性を確認しており、 範囲外の入力を自動的に修正して計算してくれるので便利です。 例えば、以下の各行はいずれも文字列 "Jan-01-1998"を出力します。

例 1. mktime の例


echo date( "M-d-Y", mktime(0,0,0,12,32,1997) );
echo date( "M-d-Y", mktime(0,0,0,13,1,1997) );
echo date( "M-d-Y", mktime(0,0,0,1,1,1998) );
	  

参照:date, time.