PHP 将整数转换为日期,与时间相反
2022-08-30 12:52:55
<?php
echo strtotime("2014-01-01 00:00:01")."<hr>";
// output is 1388516401
?>
如果它能逆转,我感到很惊讶。我的意思是我可以.我真正想知道的是,这种转换背后的逻辑是什么。php 如何将日期转换为特定整数。convert 1388516401 to 2014-01-01 00:00:01
<?php
echo strtotime("2014-01-01 00:00:01")."<hr>";
// output is 1388516401
?>
如果它能逆转,我感到很惊讶。我的意思是我可以.我真正想知道的是,这种转换背后的逻辑是什么。php 如何将日期转换为特定整数。convert 1388516401 to 2014-01-01 00:00:01
是的,您可以将其转换回来。您可以尝试:
date("Y-m-d H:i:s", 1388516401);
这种从日期到整数的转换背后的逻辑在 PHP 的 strtotime 中进行了解释:
该函数期望给定一个包含英文日期格式的字符串,并将尝试将该格式解析为Unix时间戳(自1970年1月1日00:00:00 UTC以来的秒数),相对于现在给出的时间戳,或者如果现在没有提供,则为当前时间。
例如,给你 0,给你 1。strtotime("1970-01-01 00:00:00")
strtotime("1970-01-01 00:00:01")
这意味着,如果您正在打印,这将为您提供输出,因此日期是1,388,516,401秒后1970年1月1日00:00:00 UTC。strtotime("2014-01-01 00:00:01")
1388516401
2014-01-01 00:00:01
你能试试这个,
echo date("Y-m-d H:i:s", 1388516401);
正如theGame所指出的,
这意味着您传入时间的字符串值,以及可选的当前时间的值,即 UNIX 时间戳。返回的值是一个整数,它是 UNIX 时间戳。
echo strtotime("2014-01-01 00:00:01");
这将返回到值 1388516401,这是日期 2014-01-01 的 UNIX 时间戳。这可以使用 date() 函数进行确认,如下所示:
echo date('Y-m-d', 1198148400); // echos 2014-01-01