Lua時間関数os.time()およびos.data()の特定の使用-------条件付き日数の後の日付を知る方法

      最新の仕事は、特定の日付または数日後にリセットする必要があるタスクシステムを作成することです。

      これは、条件付き日数の後の日付を知る方法という質問にまで及びます。

      この問題の難しさは、各月の日数が異なることと、同じ日数を追加した後の各月の変更された日付の処理方法です。

      たとえば、40日後の日付をリクエストします

     実際、Luaの時間関数は非常に強力です。次の方法を使用できます。    

     1.現在の時刻を計算し、表で表します。

     2。40日後の日付を計算します。

     手順と結果は以下のとおりです。

local now_time = os.date("*t", os.time())
for k,v in pairs(now_time) do
	print(k,v)
end
print("----------------分割--------------------------")

now_time.day = now_time.day + 40
local next_monday = os.date("*t", os.time(now_time))
for k,v in pairs(next_monday) do
	print(k,v)
end

     

      特記事項

      1. os.dateが日付テーブルnow_timeを作成するとき、すべてのフィールドは有効な範囲内にあります。(たとえば、now_time.daya + 40の後、now_time.day = 57)

      2. os.timeが変更された日付テーブルnow_time(now_time.day = 57)を通過する場合、そのフィールドは正規化する必要はなく、新しいタイムスタンプを取得するために自動的に処理されます。

      3.取得したt2タイムスタンプは、os.dateを介して日付テーブルに変換され、40日後の正規化された日付テーブルを取得できます。

      4.同様に、時間を変更して5時間後の日付を計算し、分を変更して100分後の日付を計算し、月を変更して6か月後の日付を計算することもできます。

     

おすすめ

転載: blog.csdn.net/banfushen007/article/details/103100533