Как преобразовать дату и время в метку времени Unix в php?

echo $_POST['time']."<br/>";
echo $_POST['day']."<br/>";
echo $_POST['year']."<br/>";
echo $_POST['month']."<br/>";

У меня есть хранилище значения как это теперь, я хочу создать метку времени из них, оценивают. Как сделать это в PHP?Заранее спасибо

5
задан deceze 22 April 2010 в 12:55
поделиться

4 ответа

Вы можете использовать mktime () . В зависимости от формата $ _ POST ['time'] , вы разделяете его на час / мин / сек, а затем используете

$timestamp = mktime($hour, $min, $sec, $month, $day, $year)
7
ответ дан 14 December 2019 в 04:33
поделиться

Другой вариант - strtotime :

$time = "{$_POST['time']} {$_POST['month']}/{$_POST['day']}/{$_POST['year']}";
$timestamp = strtotime($time);

Если $ _ POST ['time'] уже в часах и минуты (формат ЧЧ: ММ ), тогда это избавит вас от необходимости разбивать и анализировать его. strtotime может анализировать головокружительное количество строк на допустимое время.

0
ответ дан 14 December 2019 в 04:33
поделиться
echo mktime(0,0,0,$_POST['month'],$_POST['day'],$_POST['year']);

Я не знаю, в каком формате ваше время, поэтому вам, вероятно, нужно использовать explode (), а затем ввести значения в три первых параметра из mktime (), например:

$_POST['time'] = '8:56';
$time = explode(':',$_POST['time']);
echo mktime($time[0],$time[1],0,$_POST['month'],$_POST['day'],$_POST['year']);
1
ответ дан 14 December 2019 в 04:33
поделиться

Используйте объект DateTime . Синтаксический анализ выполняется за вас, и вы можете контролировать разницу в часовых поясах, чтобы переход на летнее время не вызывал проблем.

$datetimestring="{$_POST['year']}-{$_POST['month']}-{$_POST['day']} {$_POST['time]}";
$dt= date_create($datetimestring);//optional 2nd argument is TimeZone, so DST won't bite you
echo $dt->format('U');
0
ответ дан 14 December 2019 в 04:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: