转换unix时间戳php

Posted

技术标签:

【中文标题】转换unix时间戳php【英文标题】:convert unix timestamp 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.net/date拥有date()的格式化参数的完整列表 【参考方案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');

【讨论】:

以上是关于转换unix时间戳php的主要内容,如果未能解决你的问题,请参考以下文章

在python中将UNIX时间戳转换为str并将str转换为UNIX时间戳[重复]

将dateTime格式转换为Unix时间戳或将Unix时间戳转换为dateTime格式

如何使用 Shell 将 ISO 8601 时间戳转换为 Unix 时间戳?

excel怎么样批量将unix时间戳转化为北京时间

如何在scala中将ISO 8601时间戳转换为unix时间戳?

php如何取得十三位unix时间戳