ইউনিক্স টাইমস্ট্যাম্প বোঝা: ডেভেলপারদের জন্য সম্পূর্ণ গাইড

2026-05-20 · Development

ইউনিক্স টাইমস্ট্যাম্প কী?

একটি ইউনিক্স টাইমস্ট্যাম্প হলো সেকেন্ডের ক্রমাগত মোট হিসাব হিসেবে সময় ট্র্যাক করার একটি পদ্ধতি। এটি জানুয়ারি ১, ১৯৭০ ০০:০০:০০ UTC থেকে অতিক্রান্ত সেকেন্ডের সংখ্যা গণনা করে — এই রেফারেন্স পয়েন্টকে "ইউনিক্স ইপক" বলা হয়।

উদাহরণস্বরূপ, ইউনিক্স টাইমস্ট্যাম্প 1719000000 একটি নির্দিষ্ট মুহূর্তকে বোঝায়: জুন ২২, ২০২৪ প্রায় ০০:০০ UTC-তে। প্রতি সেকেন্ডে, এই সংখ্যা এক করে বাড়ে।

কেন ইউনিক্স টাইমস্ট্যাম্প ব্যবহার করবেন?

সফটওয়্যার ডেভেলপমেন্টে ইউনিক্স টাইমস্ট্যাম্প বেশ কিছু কারণে সর্বব্যাপী:

  • টাইমজোন স্বাধীনতা: একটি টাইমস্ট্যাম্প বিশ্বব্যাপী একই মুহূর্তকে বোঝায়। এটি EST, PST নাকি JST-তে কিনা তা নিয়ে কোনো দ্ব্যর্থতা নেই — এটি সবসময় UTC-ভিত্তিক।
  • সহজ তুলনা: দুটি টাইমস্ট্যাম্প তুলনা করা একটি সাধারণ সংখ্যা তুলনা। যদি টাইমস্ট্যাম্প A, টাইমস্ট্যাম্প B-এর চেয়ে বড় হয়, তাহলে ইভেন্ট A, ইভেন্ট B-এর পরে ঘটেছে।
  • দক্ষ স্টোরেজ: ১০-ডিজিটের পূর্ণসংখ্যা স্টোর করা "2024-06-22T00:00:00Z"-এর মতো ফরম্যাটেড ডেট স্ট্রিং স্টোর করার চেয়ে অনেক বেশি স্থান-দক্ষ।
  • গাণিতিক অপারেশন: একটি টাইমস্ট্যাম্পে ৮৬,৪০০ সেকেন্ড যোগ করলে ঠিক ২৪ ঘণ্টা পর পাওয়া যায়। মাস সীমানা বা লিপ ইয়ার নিয়ে চিন্তা করার প্রয়োজন নেই।

সেকেন্ড বনাম মিলিসেকেন্ড

ইউনিক্স টাইমস্ট্যাম্প দুটি সাধারণ ফরম্যাটে আসে:

  • সেকেন্ড (১০ ডিজিট): মূল ইউনিক্স টাইমস্ট্যাম্প ফরম্যাট। উদাহরণ: 1719000000
  • মিলিসেকেন্ড (১৩ ডিজিট): JavaScript এবং অনেক আধুনিক API উচ্চতর নির্ভুলতার জন্য ব্যবহার করে। উদাহরণ: 1719000000000

এই দুটি ফরম্যাট মিশ্রণ করা একটি সাধারণ বাগের উৎস। যদি আপনি সেকেন্ড প্রত্যাশা করা ফাংশনে মিলিসেকেন্ড টাইমস্ট্যাম্প পাঠান, তারিখ ভয়ংকরভাবে ভুল হবে (প্রায় ৫০,০০০ বছর ভবিষ্যতে)।

বিভিন্ন ভাষায় টাইমস্ট্যাম্প নিয়ে কাজ

JavaScript

const now = Date.now(); // মিলিসেকেন্ড
const seconds = Math.floor(Date.now() / 1000);
const date = new Date(seconds * 1000);

Python

import time
seconds = int(time.time())
from datetime import datetime
dt = datetime.fromtimestamp(seconds)

PHP

$timestamp = time(); // সেকেন্ড
$date = date('Y-m-d H:i:s', $timestamp);

MySQL

SELECT UNIX_TIMESTAMP(); -- বর্তমান টাইমস্ট্যাম্প
SELECT FROM_UNIXTIME(1719000000); -- তারিখে রূপান্তর

সাধারণ সমস্যা

  • ২০৩৮ সালের সমস্যা: ৩২-বিট সাইনড পূর্ণসংখ্যা জানুয়ারি ১৯, ২০৩৮-এ ওভারফ্লো হবে। ৩২-বিট টাইমস্ট্যাম্প ব্যবহারকারী সিস্টেমকে ৬৪-বিট পূর্ণসংখ্যায় স্থানান্তর করতে হবে।
  • লিপ সেকেন্ড: ইউনিক্স টাইমস্ট্যাম্প লিপ সেকেন্ডের হিসাব রাখে না। বেশিরভাগ সিস্টেম সেগুলোকে উপেক্ষা করে, যা পারমাণবিক সময়ের সাথে সামান্য পার্থক্য তৈরি করতে পারে।
  • টাইমজোন প্রদর্শন: সবসময় মনে রাখবেন একটি ইউনিক্স টাইমস্ট্যাম্প UTC-তে থাকে। ব্যবহারকারীদের কাছে প্রদর্শন করতে তাদের স্থানীয় টাইমজোনে রূপান্তর প্রয়োজন।

TryQuickToolBox টাইমস্ট্যাম্প কনভার্টার

আমাদের ফ্রি টুল ইউনিক্স টাইমস্ট্যাম্প (সেকেন্ড এবং মিলিসেকেন্ড), ISO 8601 তারিখ, UTC সময় এবং স্থানীয় সময়ের মধ্যে রূপান্তর করে। অটো-ডিটেকশন মানে আপনি যেকোনো ফরম্যাট পেস্ট করে তাৎক্ষণিক ফলাফল পেতে পারেন। যেকোনো ফলাফলে ক্লিক করে ক্লিপবোর্ডে কপি করুন।

এখনই টাইমস্ট্যাম্প রূপান্তর করুন →