时间:2011-01-06 15:48:58

标签: php mysql

6 个答案:

答案 0 :(得分:41)

答案 1 :(得分:8)

答案 2 :(得分:2)

使用DateTime类的最佳方法

$my_sql_date = '2011-01-06 09:39:11';
$date_time = new DateTime($my_sql_date);
echo $date_time->format('Y').PHP_EOL;
echo $date_time->format('m').PHP_EOL;
echo $date_time->format('d').PHP_EOL;
echo $date_time->format('h').PHP_EOL;
echo $date_time->format('i').PHP_EOL;
echo $date_time->format('s');

答案 3 :(得分:0)

$dt = Carbon::now();
$dt->timestamp = strtotime($mysqlVarDatetime); //like '2017-01-31 07:19:11' string cad

可能会导致:

var_dump($dt->year);                                         // int(2017)
var_dump($dt->month);                                        // int(1)
var_dump($dt->day);                                          // int(31)
var_dump($dt->hour);                                         // int(7)
var_dump($dt->minute);                                       // int(19)
var_dump($dt->second);                                       // int(11)

资源以获取更多信息碳库http://carbon.nesbot.com/docs/#api-getters

答案 4 :(得分:0)

旧帖子,但是我无法拒绝发布那些显而易见的蛮力'溶液:

如果您的SQL日期时间字符串格式总是如您的示例所示,并且您不想使用日期时间函数/类,则可以执行以下操作:

$year, $month, $day, $hr, $min, $sec

您想要的值现在可用于以下变量:activity_admin.xml

答案 5 :(得分:0)

我想提出一种更清洁的方法。这可以在任何库或框架上实现

首先,您应该将datetime字符串转换为时间戳(strtotime适用于几乎所有格式)。然后使用getdate如下:

$dateAsTimestamp = strtotime("2011-01-06 09:39:11.45");
$dateTime = getdate($dateAsTimestamp);

该函数将日期和时间的所有组成部分作为关联数组返回。

Array
(
    [seconds] => 11
    [minutes] => 39
    [hours] => 9
    [mday] => 6
    [wday] => 4
    [mon] => 1
    [year] => 2011
    [yday] => 5
    [weekday] => Thursday
    [month] => January
    [0] => 1294306751
)

现在可以根据您的要求访问

echo($dateTime['hours']);
echo($dateTime['minutes']);
echo($dateTime['seconds']);

$MONTH = $dateTime['month'];

有关日期/时间功能的更多信息-getdatestrtotime