如何在php中将日期转换为整数?

15

我有一个包含日期列的mysql数据库,使用datetime数据类型。

但现在我想将数据类型从datetime更改为长整数。

我想知道如何将日期转换为任何整数值。

假设我有一个日期

例如2012-03-27 18:47:00

那么我想知道是否可能将其转换为任何整数,比如131221154


是的,我正在使用 PHP 进行转换。 - शु-Bham
那是一个日期时间,你需要考虑一下你在这里做什么。为什么你想要一个长整型? - Tony Hopkinson
有没有将文本转换为整数的解决方案? - शु-Bham
2个回答

36

使用PHP的strtotime函数。

该函数期望传入一个包含英文日期格式的字符串,并尝试将该格式解析为Unix时间戳(自1970年1月1日00:00:00 UTC以来的秒数),相对于当前时间戳或未提供now参数时的当前时间。

echo strtotime('2012-03-27 18:47:00'); //--> which results to 1332866820

要将其转换回来,只需使用PHP的date函数:

$long = strtotime('2012-03-27 18:47:00'); //--> which results to 1332866820
echo date('Y-m-d H:i:s', $long);

strtotime("1900-06-12") 是什么意思? - Máxima Alekz
1
对于 PHP 的 64 位版本,1970 年 1 月 1 日 00:00:00 UTC 之前的日期将返回一个负时间戳。否则,它可能会根据您使用的平台返回布尔值 false。 - LChuan

11

检查这个

<?php
$timestamp = strtotime('1st January 2004'); //1072915200

// this prints the year in a two digit format
// however, as this would start with a "0", it
// only prints "4"
echo idate('y', $timestamp);
?>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接