3

我遇到了一个小的编程问题。我需要做一些时间计算,但作为输入,我只有一个字符串 - 所以基本上我需要将此字符串转换为 PHP 中的日期/时间对象。这是我遇到麻烦的转换。

$endtimestamp = "September 1, 2012 13:00 PM";

$doesntwork = strtotime(trim($endtimestamp));
$doesntwork2 = date_create_from_format("l, F j, Y G:i A", $endtimestamp);
$doesntwork3 = date("l, F j, Y G:i A", strtotime($endtimestamp));

老实说,我不知道为什么这些功能不能按预期工作。到目前为止,其他在线资源充其量是模糊的。谁能告诉我我做错了什么?

4

2 回答 2

3

发生这种情况是因为你l,一开始就有一些奇怪的东西

如果您使用这种格式:

'F j, Y G:i A'

它工作正常

于 2012-08-28T22:04:59.237 回答
2

这里有2个问题。

一是13:00 PM没有任何意义。要么1:00 PM 要么 13:00

strtotime("September 1, 2012 13:00");

此外,您的格式l, F j, Y G:i A与您的输入字符串不匹配。

格式应该是: F j, Y G:i A,或者字符串应该是Saturday, September 1, 2012 13:00 PM.

于 2012-08-28T22:06:15.567 回答