strftime()突然停止工作。任何见解?

时间:2012-06-07 16:35:59

标签: php date format strtotime strftime

我有一个简单的脚本,它接受输入日期,格式化它,并将其存储在数据库中。我以下列方式使用strftime函数:

$pdate = strftime('Y-m-d', strtotime($_POST['post_date']));

由于某种原因,这突然开始回归'Y-m-d'。是的,它返回了我传递的格式字符串作为第一个参数!根本没有日期信息。我也尝试通过传递一个直接的unicode时间戳作为第二个参数来做到这一点,但它仍然只返回格式字符串。它在几天前工作正常。 现在我已将其切换为使用date()函数:

$pdate = date('Y-m-d', strtotime($_POST['post_date']));

现在一切正常!我只是想知道是否有人有任何想法为什么strftime()函数突然停止工作。这看起来很奇怪,它会让我整天烦恼。

2 个答案:

答案 0 :(得分:2)

实际上问题可能是相反的:)我不知道它是如何返回正确格式化日期的,因为通常它应该是这样的:

$pdate = strftime('%Y-%m-%d', strtotime($_POST['post_date']));

如描述here:)

答案 1 :(得分:1)

您在strftime参数中使用了错误的日期格式。检查strftime功能。它应该是这样的:

$pdate = strftime('%Y-%m-%d', strtotime($_POST['post_date']));

还有许多其他格式。