我正在尝试将 09/30/2011 之类的 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))
我正在尝试将 09/30/2011 之类的 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))
格式字符串 'Ymd h:m:s' 应在您的代码中修改为 'Ymd H:i:s'。在date
函数中,char 'm' 的格式是月,而不是分钟;'h' 是从 01 到 12 的小时,'H' 是从 00 到 23 的小时。
您的代码有效,但如果您想在 PHP 中使用 DateTime,这里有一个小例子。
除时间戳外的每个日期输出都需要一个时区才能在该时区获得正确的时间。
因此,如果您的 php 配置尚未为您设置,请通过以下方式设置默认时区:
date_default_timezone_set('XXXX');
XXXX 代表支持的时区列表中的一个值
如果您想使用您的日期作为对象,您现在需要通过以下方式对其进行初始化:
$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 类手册。