转换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】:
您可以使用strtotime
和date
函数:
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 时间戳?