5

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

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

4

5 回答 5

10

最简单的方法是使用 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');
于 2013-09-26T10:13:44.057 回答
1

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

你可以使用类似的东西:

$time = strtotime($getTimeStamp);
$getDate = date('Y-m-d', $time);
$getHour = date('H', $time);
$getMinute = date('i', $time);
于 2013-09-26T10:10:21.560 回答
1

您可以简单地使用 -

$time = strtotime($getTimeStamp);

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

看看time()date()

于 2013-09-26T10:10:26.233 回答
1

好吧,因为你真正想要的是解析一些文本,这将是最短的方法:

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

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

活生生的例子

于 2013-09-26T10:13:22.830 回答
0

使用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');
于 2013-09-26T10:19:37.190 回答