从 PHP 中的日期时间戳中获取日期、小时和分钟作为单独的变量


Get date, hour and minute as separate variables from a datetimestamp in PHP

在PHP中,如果我有一个遵循格式为0000-00-00 00:00:00(即2013-09-26 13:06:00)的变量($getTimeStamp)。

将日期 ($getDate)、小时 ($getHour) 和分钟 ($getMinute) 作为单独的变量的最简单方法是什么?

最简单的方法是使用 PHP DateTime 类

$getTimeStamp = '2013-09-26 13:06:00';
$date = new 'DateTime($getTimeStamp);
$dateString = $date->format('Y-m-d');
$hourString = $date->format('H');
$minuteString = $date->format('i');
这不是

时间戳;)检查函数返回time()什么,这就是时间戳的样子。

你可以使用这样的东西:

$time = strtotime($getTimeStamp);
$getDate = date('Y-m-d', $time);
$getHour = date('H', $time);
$getMinute = date('i', $time);

您可以使用以下方法简单地实现此目的:

$time = strtotime($getTimeStamp);
$getDate = date('Y-m-d', $time);
$getHour = date('H', $time);
$getMinute = date('i', $time);

看看 time()date()。

好吧,由于您想要的只是解析一些文本,这将是最短的方法:

list($date, $hour, $minute) = preg_split('/[ :]/', $getTimeStamp);

如果您不操作日期或计算时间戳,则没有真正的理由涉及日期/时间类。

活生生的例子

使用 DateTime 类只需一个答案

$dt = DateTime::createFromFormat('Y-m-d H:i:s', $getTimeStamp);
$date = $dt->format('Y-m-d ');
$hour = $dt->format('H');
$minutes = $dt->format('i');