2

我环顾四周,但不断收到错误消息。

我有以下字符串:

$date = "25 Jan 2013 07:30 PM";

但我需要将它作为单独的日期和时间字段添加到 sql 中。有什么建议可以将其转换为日期而不是字符串?当我尝试使用类似的东西时

strtotime($date);

我最终得到:

1359142200
4

4 回答 4

4

选项1:

$date = date("Y-m-d", strtotime("25 Jan 2013 07:30 PM"));
$time = date("H:i:s", strtotime("25 Jan 2013 07:30 PM"));

选项 2

$datetime = DateTime::createFromFormat("j M Y H:i A", "25 Jan 2013 07:30 PM");
$date = $datetime->format("Y-m-d");
$time = $datetime->format("H:i:s");
于 2013-03-05T16:07:03.337 回答
1

为获得最佳结果,请转换$dateDateTime对象,DateTime::createFromFormat然后用于DateTime::format获取单独字段的值。

例子:

$dt = DateTime::createFromFormat("d M Y H:i A", "25 Jan 2013 07:30 PM");

$date = $dt->format("Y-m-d");
$time = $dt->format("H:i:s");
于 2013-03-05T16:06:51.603 回答
-1

所以你只是想让他们分开?就像是:

$year_month_day = date('Y/m/d', strtotime($date));
$timestamp = date('H:i:s', strtotime($date));

更多信息:http ://www.php.net/manual/en/function.date.php

于 2013-03-05T16:09:34.983 回答
-1

如果您希望它作为时间戳,那么strtotime()使用 PHP 函数:- http://php.net/manual/en/function.strtotime.php

如果您希望它采用 MySQL 日期格式字符串,那么strtotime()结合使用date()将是这样的答案:-

$db_date = date("Y-m-d H:i:s", strtotime($date) );
于 2013-03-05T16:09:59.450 回答