【问题标题】:extracting hour value from a DATETIME format从 DATETIME 格式中提取小时值
【发布时间】:2010-11-20 04:07:58
【问题描述】:

如何从 DATETIME 格式变量中获取小时数。

示例:2009-08-17 13:00:00

我只需要得到'13'

【问题讨论】:

    标签: php mysql datetime


    【解决方案1】:

    你可以使用HOUR()函数:

    mysql> SELECT HOUR('2009-08-17 13:00:00');
    +-----------------------------+
    | hour('2009-08-17 13:00:00') |
    +-----------------------------+
    |                          13 |
    +-----------------------------+
    

    【讨论】:

    【解决方案2】:

    在 php 中,

    list($date, $time) = explode(' ', '2009-08-17 13:00:00');
    list($hour, $min, $sec) = explode(':', $time);
    

    $hour 应该包含 13。

    【讨论】:

    • 谢谢...完美,除非您想在第二个 list() 中爆炸 $time;
    • 对于这样的固定格式(4 位、2 位、2 位等),您不妨使用substr - 就像$hour = +substr($datetime, 11, 2); 中一样
    【解决方案3】:
    $hour = date("H", strtotime('2009-08-17 13:00:00'));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-18
      相关资源
      最近更新 更多