idej.net
Назад

Как конвертировать дату в формат Timestamp на PHP

Опубликовано: 20.10.2019
Время на чтение: 5 мин
0
26

Как конвертировать дату в формат Timestamp на PHP

Timestamp - это последовательность символом, в которых закодирована информация о времени. В инетрнете этим термином обычно обозначается UNIX время. Это время определяется как количество секунд, прошедших с полуночи (00:00:00 UTC) 1 января 1970 года (четверг); время с этого момента называют «эрой UNIX» (англ. Unix Epoch).

Дата и время, закодированное таким способом имеет большое кол-во преимуществ. Вы можете использовать специальные сайты, которые при вводе определенных параметров помогут закодировать значение, однако если Вы собираете хранить определенные временные данные сайта в БД, то Вам понадобится небольшой скрипт, который будет конвертировать нужную дату и время в формат timestamp и записывать в БД. Вы также можете превращать форматированную дату в формат timestamp, чтобы изменить вид вывода.

Для написания этого скрипта нам понадобится взять 2 функции: explode() и mktime().

Explode() разобьет дату и время на массив,а mktime() конвертирует эти данные. Более подробно о этих функциях Вы можете прочитать в документации к PHP.

Наш исходный скрипт будет иметь такой вариант:

$dt = explode(" ", "07.02.2015 00:00");
$date = explode(".", $dt[0]);
$time = explode(":", $dt[1]);
$timestamp = mktime($time['0'], $time['1'], $time['2'], $date['1'], $date['0'], $date['2']);

Рассмотрим подробно каждую строчку:

1 строка - explode("Тут указываем разделитель - пробел", "Сюда любым способом передаем дату и время");

2 строка - $date = explode("Тут указываем разделитель даты", $dt[0]);

3 строка - $time = explode("Тут указывается разделитель времени", $dt[1]);

4 строка - Собираем массивы вместе и конвертируем данные. Последовательность значений в функции - hour, minute, second, month, day, year. Поэтому, в зависимости от формата даты, необходимо менять номера элементов массива.

Указывайте правильную временную зону при помощи функции date_default_timezone_set(' ');

 

У вас остались вопросы? Вы хотите дополнить статью? Вы заметили ошибку? Сообщите мне об этом ниже, я обязательно Вас услышу!

 

Если Вам помогла данная статья, то напишите об этом в комментариях. И не забывайте делиться статьей со своими друзьями в соц.сетях;)

Поделиться
Комментарии:
Комментариев еще нет. Будь первым!
Имя
Укажите своё имя и фамилию
E-mail
Без СПАМа, обещаем
Текст сообщения
Отправляя данную форму, вы соглашаетесь с политикой конфиденциальности и правилами нашего сайта.