You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3.4 KiB

< Documentation

LE_TIME

© by Pavel Belyaev, LE Framework, Tech-Research.ru

About

Данный класс создан для упрощения работы с датами и временем...

Форматирование даты

Данная функция принимает на вход timestamp, а возвращает строку с датой и временем в нужном формате

echo LE_TIME::TS2STR($format=false,$timestamp=false,$timezone=false);
  • $format - формат strftime, по умолчанию 30 дек 2020 02:54:00
  • $timestamp - по умолчанию текущее время, передавать timestamp в unixtime (секундах)
  • $timezone - по умолчанию UTC +5 (Yekaterinburg), если передать 0, то будет по Гринвичу

Примеры форматов

Дата: 23 января 2020 года 23 часа, 34 минуты, 20 секунд

ID Формат Выхлоп Применение
1 %Y-%m-%d %H:%M:%S 2020-01-23 23:34:20 Запись в БД DateTime
2 %Y-%m-%d 2020-01-23 Запись в бд Date
3 %d %b %Y - %T 23 янв 2020 - 23:34:20 Вывод в интерфейсе
4 %d %b %Y %T 23 янв 2020 23:34:20 Вывод в интерфейсе
5 %d.%m.%Y - %T 23.01.2020 - 23:34:20 Вывод в интерфейсе
6 %d.%m.%Y %T 23.01.2020 23:34:20 Вывод в интерфейсе
7 %d.%m.%Y 23.01.2020 Вывод в интерфейсе
8 %d %b %Y 23 янв 2020

Формат можно писать свой в формате strftime или просто передать номер из таблицы

echo LE_TIME::TS2STR($format=8,$timestamp=false,$timezone=0);

Преобразующие функции

Из одной строки в другую

$str2 = LE_TIME::STR2STR($str="2020-01-23",$format=8,$tz=0);

удобно применять для переформатирования даты из БД в дату в нужном формате, на вход можно подавать дату в UTC, а на выходе в локальном часовом поясе, для этого можно передать $tz=5

Из строки в Timestamp

простой парсинг строки с датой, возвращает timestamp

$str2 = LE_TIME::STR2TS($str="20.05.2020");

Преобразование в массив и из массива удобно для специфичных операций с датами, например, быстро подправить время на 00:00:00 или 23:59:59 или быстро сдвинуть год, поправить дату

Из строки в массив

$time_arr = LE_TIME::STR2ARR($str="20.05.2020");
  • Y - год
  • M - месяц
  • D - день месяца
  • HOUR - час в 24 формате
  • MIN - минуты
  • MIN - секунды

Из Timestamp в массив

$time_arr = LE_TIME::TS2ARR($ts=false);

Из массива в TimeStamp

$timestamp = LE_TIME::ARR2TS($time_arr);

Из массива в строку (с форматирование и смещением на часовой пояс)

$time_arr = LE_TIME::ARR2STR($time_arr,$f=8,$tz=0)