【问题标题】:How can I get 2 digits in a time that I get from mySQL with PHP?如何在使用 PHP 从 mySQL 获得的时间内获得 2 位数字?
【发布时间】:2018-10-11 19:38:22
【问题描述】:

我使用此代码仅通过 PHP 从 mySQL 中的时间戳获取时间。

$timestamp = strtotime($row['timestampSQL']);
$time = date('G:i:s', $timestamp);

而这显示的是 3:00,那么显示 03:00 会这么难吗?

再次感谢,莱安德罗。

【问题讨论】:

  • 有什么特别的原因吗?
  • 更多的是 RTM 而不是错字,IMO。
  • 应该有一个 RTM 标志(作为欺骗的替代品)以及相应手册的链接
  • $time = date('G:i:s', $timestamp); $time = "0". $time; - 嘿! 好的,这是一个 hack:p
  • @Jeff 我没有 Read The Memo ;-) TBH,我不是一个元人。

标签: php datetime timestamp


【解决方案1】:

您可以在文档中看到:

http://php.net/manual/en/function.date.php

G 24 小时格式的小时,不带前导零 0 到 23

H 24 小时格式的小时,前导零 00 到 23

所以,替换:

$time = date('G:i:s', $timestamp);

$time = date('H:i:s', $timestamp);

【讨论】:

  • 非常感谢!我已经用西班牙语读过那个页面,但我找不到它!显然工作得很好。
【解决方案2】:

您正在使用G: i: s

但如果 H 的结果小于 10,则应使用H: i: s 将其时间转换为 0X

这是一个例子

$query = $this->db->query("SELECT '2018-10-11 03:48:22' AS now");
$date = $query->row['now'];
$time = date('H:i:s', strtotime($date));
print_r($time);

结果是:03:48:22

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-30
    • 2023-03-16
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多