Lua:
การคำนวณวันที่ในอนาคตหรืออดีต
วิธีการ:
ใน Lua, คุณมีฟังก์ชัน os.date
และ os.time
ที่คุณใช้เพื่อช่วยในการคำนวณวันที่และเวลา
-- เพิ่มวันไปยังวันที่ปัจจุบัน
local daysToAdd = 10
local futureDate = os.time() + (daysToAdd * 24 * 60 * 60) -- วัน * ชั่วโมง * นาที * วินาที
print("Future Date: " .. os.date("%Y-%m-%d", futureDate))
-- ลบวันจากวันที่ปัจจุบัน
local daysToSubtract = 5
local pastDate = os.time() - (daysToSubtract * 24 * 60 * 60) -- การแปลงเดียวกันเหมือนข้างบน
print("Past Date: " .. os.date("%Y-%m-%d", pastDate))
ผลลัพธ์ตัวอย่างอาจเป็น:
Future Date: 2023-05-03
Past Date: 2023-04-18
การลงลึก
ฟังก์ชัน os.date
และ os.time
ของ Lua มีรากฐานมาจาก C library มาตรฐาน นี่หมายความว่าพวกเขาใกล้เคียงกับเมทัล — มีประสิทธิภาพและเชื่อถือได้ พวกเขาไม่ใช้ของตกแต่งเช่นเขตเวลาหรือการปรับเวลาตามฤดูกาล; พวกเขาจัดการใน UTC และวินาทีตั้งแต่ Unix epoch (1 มกราคม 1970)
หากคุณกำลังมองหามากกว่า os.date
และ os.time
มีทางเลือกอื่นที่มีอยู่ ไลบรารีเช่น Luadate
นำเสนอการดำเนินการที่ซับซ้อนมากขึ้น, การจัดการเขตเวลาและปรับเวลาตามฤดูกาลด้วยความประณีตมากขึ้น
เมื่อพูดถึงการนำไปใช้, จับตาดูวินาทีที่เพิ่มขึ้น, และจำไว้ว่าการเพิ่มเดือนไม่เรียบง่ายเหมือนกับการเพิ่ม 30 วัน แต่ละเดือนมีจำนวนวันที่แตกต่างกัน, และกุมภาพันธ์อาจทำให้คุณเสียเวลาหรือประหลาดใจด้วยวันเพิ่มเติม
ดูเพิ่มเติม
สำหรับประสบการณ์วันและเวลาที่หรูหรายิ่งขึ้นใน Lua, ตรวจสอบทรัพยากรเหล่านี้:
- LuaRocks
Luadate
: https://luarocks.org/modules/luarocks/luadate - วิกิผู้ใช้ Lua เกี่ยวกับวันที่และเวลา: http://lua-users.org/wiki/DateTime
- อ้างอิงไลบรารี
os
ในคู่มือ Lua 5.4: https://www.lua.org/manual/5.4/manual.html#6.9