php日期转换到有时间的日期

时间:2011-10-07 03:04:43

标签: php date-conversion

我正在尝试将2011年9月30日的php日期转换转换为此格式2011-09-30 21:35:46。

我阅读了一些手册,但这对我来说很难。

$input = "09/30/2011";
$output = "2011-09-30 21:35:46";

$output = date('Y-m-d h:m:s', strtotime($input))

2 个答案:

答案 0 :(得分:3)

格式字符串'Y-m-d h:m:s'应在代码中修改为'Y-m-d H:i:s'。 在date函数中,char'm'格式是月份,而不是分钟; 'h'是从01到12的小时,'H'是从00到23的小时。

答案 1 :(得分:2)

您的代码有效,但如果您想在PHP中使用DateTime,这里有一个小例子。

除了时间戳之外的每个日期输出都需要一个时区来获得该时区的正确时间。

所以,如果你的php配置还没有为你设置,请设置你的默认时区:

date_default_timezone_set('XXXX');

XXXX代表List of supported timezones

之外的值

如果您想将日期用作对象,则需要通过以下方式对其进行初始化:

$date = new DateTime();

$ date现在将具有当前时间,如果您想在示例“09/30/2011”中设置时间,您可以直接写下:

$date = new DateTime('09/30/2011');

要格式化日期输出,您可以使用:

echo $date->format('Y-m-d H:i:s');

或者,如果您想设置时间,也可以用一段时间启动DateTime:

$date = new DateTime( '09/30/2011 21:35:46' );

请务必记住,格式化输出取决于您的时区。

要了解有关DateTime的更多信息,请查看DateTime class manual