PHP:
Получение текущей даты
Как это сделать:
Вы вызываете текущую дату в PHP с помощью функции date(). Например:
echo "Сегодняшняя дата: " . date("Y-m-d") . "<br>";
echo "Время: " . date("h:i:sa");Вывод может быть таким:
Сегодняшняя дата: 2023-04-01
Время: 10:15:36amПросто, правда? Для времени по UTC используйте функцию gmdate():
echo "Время UTC: " . gmdate("h:i:sa");И вы получите что-то вроде:
Время UTC: 02:15:36pmГлубже в тему
Теперь, когда мы разобрались с основами, давайте немного углубимся. В первую очередь, под капотом, PHP использует системные часы сервера для своих временных функций. Отступая назад, функции даты PHP имеют долгую историю, идущую от способов обработки дат и времени в Unix.
До date(), были strtotime() и mktime(). Эти старожилы переводят практически любое англоязычное текстовое описание даты и времени в Unix-временную метку. Но они более громоздки для быстрого захвата текущего времени.
Теперь о технических деталях – PHP хранит даты в виде целых чисел. Конкретно, секунды с начала эпохи Unix (1 января 1970 года). Это означает, что вселенная согласно PHP взорвется в 2038 году (Google “Проблема 2038 года” для подробностей армагеддона). На данный момент это не проблема, так как PHP 7 и новее используют 64-битные целые числа, что дает нам время до конца времен… ну, почти.
Часовые пояса – они могут внести свои коррективы в ваши времена, если вы не будете осторожны. Установите свой часовой пояс по умолчанию, используя date_default_timezone_set(), если вы хотите синхронизироваться с определенными часами.
Смотрите также
Вот некоторые полезные документации и уроки для погружения в глубокие воды:
- Документация по функции даты PHP
- Часовые пояса в PHP
- Класс DateTime в PHP, для более изысканных способов работы с датами и временем
- Вот эта нависшая Проблема 2038 года