PHP:将日期转换为秒?

时间:2009-12-20 16:13:35

标签: php

我的日期类似 2009年12月15日星期二。如何将其转换为秒?

更新: 如何将上述格式的日期转换为Unix时间戳?

3 个答案:

答案 0 :(得分:25)

我假设你的意思是UNIX timestamp

strtotime()应该有帮助。

答案 1 :(得分:15)

您可以使用strtotime功能将该日期转换为时间戳:

$str = 'Tue Dec 15 2009';
$timestamp = strtotime($str);

而且,为了确保,让我们将其转换回字符串日期:

var_dump(date('Y-m-d', $timestamp));

这给了我们:

string '2009-12-15' (length=10)

(证明strtotime了解我们的日期^^)



[编辑2012-05-19]正如其他一些问题可能会引导一些读者:请注意, strtotime() 不是唯一的解决方案,而且你应该能够使用DateTime类,它提供了一些有趣的功能 - 特别是如果你使用PHP> = 5.3


在这种情况下,您可以使用类似以下代码的部分:

$str = 'Tue Dec 15 2009';
$format = 'D F d Y';
$dt = DateTime::createFromFormat($format, $str);
$timestamp = $dt->format('U');


DateTime::createFromFormat()允许人们从几乎任何日期创建 DateTime 对象,无论它是如何格式化的,因为您可以在中指定日期格式(此方法是可用PHP> = 5.3)

DateTime::format()允许您将该对象格式化为几乎任何类型的日期格式 - 包括此处请求的UNIX Timestamp

答案 2 :(得分:6)

你的意思是像UNIX时间戳?尝试:

echo strtotime('Tue Dec 15 2009');