なでしこでタイムスタンプ
なでしこには標準でUNIXタイムスタンプを取り扱う関数がないっす。
結構僕は、UNIXタイムスタンプをあちこちでつかうので、結構困ってて、今までは、Perlのスクリプトを作っておいて、その標準出力をなでしこで取得して…なんて回りくどいことしてました。
1970/1/1からの秒差で計算させてみたこともあるんですが、どういうわけだか正確じゃないんですよね。閏秒とかのせいでしょうか?
なでしこがLuaをサポートしてくれたおかげで、なでしこだけで、UNIXタイムスタンプが正確にあつかえるようになりました。
ってことで、現在のUNIXタイムスタンプと、日付と時間からUNIXタイムスタンプを取得する関数を作っておきました。
●unixtime()
「nowtime = os.time()」をLUAする。
LUA値(「nowtime」)で戻る。
●mktime( Y, M, D, h, m, s)
//nako_get
『tbl = {}』& 改行 &
「tbl['year'] = nako_get('Y')」& 改行 &
「tbl['month'] = nako_get('M')」& 改行 &
「tbl['day'] = nako_get('D')」& 改行 &
「tbl['hour'] = nako_get('h')」& 改行 &
「tbl['min'] = nako_get('m')」& 改行 &
「tbl['sec'] = nako_get('s')」& 改行 &
「print(tbl['year'])」& 改行 &
「nowtime = os.time(tbl)」をLUAする。
LUA値(nowtime)で戻る
ご自由におつかいくださいませ。