Unix timestamp
Перевести мітку часу в дату і навпаки
Дані не залишають ваш браузер
Цей інструмент повністю працює на вашому пристрої: обчислення виконує JavaScript у вкладці. Ми не надсилаємо введений текст на сервер, не зберігаємо і не логуємо його. Можете сміливо працювати з робочими даними - і навіть відключити інтернет після завантаження сторінки.
- Київ
- UTC
- Мілісекунди
- Відносно зараз
Що таке Unix timestamp
Кількість секунд, що минули з опівночі 1 січня 1970 року за UTC. Одне ціле число, яке не залежить від часового поясу, формату дати чи мови - тому воно й стало універсальним способом зберігати момент часу.
Секунди чи мілісекунди
Найчастіша плутанина. PHP працює в секундах (10 цифр), JavaScript - у мілісекундах (13 цифр). Число, помилково взяте не в тих одиницях, дає дату в 1970 році або десь у 55 тисячолітті.
time(); // 1757116800 - секунди
now()->timestamp; // 1757116800 - секунди
now()->getTimestampMs(); // 1757116800000 - мілісекунди
Інструмент вище розпізнає обидва варіанти за довжиною числа.
Проблема 2038 року
На 32-бітних системах timestamp зберігався у знаковому 32-бітному цілому, яке переповниться 19 січня 2038 року. Сучасний PHP на 64-бітній системі цим не страждає, але старі бази з полем int - цілком: TIMESTAMP у MySQL має ту саму межу, на відміну від DATETIME.
Часові пояси
Сам timestamp поясу не має - це просто число. Пояс з'являється лише при відображенні. Класична помилка - зберігати локальний час і згодом не розуміти, у якому поясі його записали.
Правило: зберігайте в UTC, показуйте в поясі користувача.
// config/app.php - весь застосунок працює в одному поясі
'timezone' => 'Europe/Kyiv',
Українське літній/зимовий час робить різницю з UTC змінною: +2 взимку, +3 влітку. Для розкладів це головна пастка - див. cron-вирази. Тому арифметика на кшталт «додати 3 години» ненадійна - користуйтеся Carbon, який знає правила переходів.
Carbon у Laravel
// З timestamp і назад
$date = Carbon::createFromTimestamp(1757116800);
$date->timestamp;
// Розбір і форматування
Carbon::parse('2026-09-06 22:00')->format('d.m.Y H:i');
// Пояси
now()->setTimezone('UTC');
now('Europe/Kyiv');
// Відносний час українською - Carbon локалізований
$post->created_at->diffForHumans(); // «3 години тому»
// Порівняння і межі
$vacancy->created_at->isToday();
Order::whereBetween('created_at', [now()->startOfMonth(), now()->endOfMonth()])->get();
// Фіксований час у тестах - інакше тести «мигають» на межі доби
Carbon::setTestNow('2026-09-06 12:00:00');
Останнє варте окремої уваги: тест, який працює вдень і падає опівночі, майже завжди означає порівняння з now() без фіксації часу.
- Де виконується
- у браузері
- Категорія
- Час і розклад