2016-08-14 11 views
0

私は2つのUnixタイムスタンプがあるときに扱いやすいので、Trelloがカードの期日に使用する時間をUnix時間と比較しようとしています。しかし、私はそれを変換する方法として不明です。Trelloが使用するタイムスタンプをUNIXのタイムスタンプに変換するにはどうすればよいですか?

Trelloのタイムスタンプは次のようになります。

2016-08-13T17:27:06.886Z 

最初の数字が日付であり、Tの後の時間です。 Zは、 "Zulu time"であり、UTCと同じであると述べています。

私がしたいのは、これをとり、それをLuaを使ってUnixタイムスタンプに変換することです。

+0

これはタイムスタンプではありませんが、これはJSONバージョンの時間です。 –

答えて

2

Nevermindは、os.time()関数を詳しく調べる方法を見つけました。それを使用して

local function formatTime(s) 
    local y = tonumber(string.sub(s, 1, 4)) 
    local m = tonumber(string.sub(s, 6, 7)) 
    local d = tonumber(string.sub(s, 9, 10)) 
    local h = tonumber(string.sub(s, 12, 13)) 
    local mi = tonumber(string.sub(s, 15, 16)) 
    local s = tonumber(string.sub(s, 18, 19)) 

    local tbl = { 
     year = y, 
     month = m, 
     day = d, 
     hour = h, 
     minute = mi, 
     second = s, 
     isdst = (m>=3 and m<=10) --this is roughly close to DST, not perfect. 
    } 

    return os.time(tbl) 
end 

、私は次のよう呼び出す場合:

formatTime("2016-08-13T17:27:06.886Z") 

は、それはその時に対応するUNIXタイムスタンプを返します。これが同じ問題を抱えている人を助けることを望みます。

-1

Webアプリケーションまたはノードjsアプリケーション内の時刻を変換する場合は、Moment.Jsを簡単に使用できます。 http://momentjs.com

+0

モーメントはWebアプリケーションのための素晴らしいツールのように見えますが、私はLuaを使用しようとしています。とにかくおかげで。 – BreadyToCrumble

関連する問題