【问题标题】:convert unix timestamp php转换unix时间戳php
【发布时间】:2010-09-14 09:15:00
【问题描述】:

我有一个为我存储时间的数据库。我使用

从 PHP 插入它
date( 'Y-m-d H:i:s');

然后我使用此函数将其转换为 PHP 中的 unix 时间戳

function convert_datetime($str) 
{
list($date, $time) = explode(' ', $str);
list($year, $month, $day) = explode('-', $date);
list($hour, $minute, $second) = explode(':', $time);

$timestamp = mktime($hour, $minute, $second, $month, $day, $year);

return $timestamp;
}

我现在需要做的是将此时间戳转换为以下格式的日期和时间: yyyymmddhhmmss(没有任何连字符、破折号、冒号等)。

有人有什么想法吗?

【问题讨论】:

标签: php datetime unix-timestamp


【解决方案1】:

您可以使用strtotimedate 函数:

echo date('Ymdhis', strtotime($date));

【讨论】:

    【解决方案2】:

    使用date

    $date = date("YmdHis", $timestamp);
    

    【讨论】:

      【解决方案3】:

      给你

      print date("YmdHis",unixtimestamp);
      

      【讨论】:

        【解决方案4】:

        如果你使用 mysql,它有一个DATE_FORMAT 函数。你可以这样称呼它

        SELECT DATE_FORMAT(`datefield`, "%Y%m%d%H%i%s") AS `date_formatted` FROM table;
        

        所以你从你的数据库中得到一个已经格式化的日期。

        【讨论】:

        • 我也会推荐这种方法而不是使用 PHP。我没有做过任何基准测试,但我怀疑它的速度要快几个数量级。另外,如果可以的话,在 SQL 中使用 NOW(),而不是 PHP 中的 date('Y-m-d H:i:s'); 进行插入。
        【解决方案5】:

        使用正确的格式:

        date('YmdHis');
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-09-08
          • 2017-03-30
          • 2016-04-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多