gpt4 book ai didi

php - 日期/时间转换为自 php 以来的时间

转载 作者:可可西里 更新时间:2023-11-01 00:27:30 26 4
gpt4 key购买 nike

你好在我的数据库中日期/时间都是这种格式

2010-06-01T18:20:25+0000

我想回显自该日期/时间以来耗时

例如

4 天 3 小时 36 分 4 秒

这可能吗?

最佳答案

下面是我为此编写的一个函数。请随意使用它。

/**
* Returns rough (in largest single unit) time elapsed between two times.
* @param int $iTime0 Initial time, as time_t.
* @param int $iTime1 Final time, as time_t. 0=use current time.
* @return string Time elapsed, like "5 minutes" or "3 days" or "1 month".
* You might print "ago" after this return if $iTime1 is now.
* @author Dan Kamins - dos at axonchisel dot net
*/
function ax_getRoughTimeElapsedAsText($iTime0, $iTime1 = 0)
{
if ($iTime1 == 0) { $iTime1 = time(); }
$iTimeElapsed = $iTime1 - $iTime0;

if ($iTimeElapsed < (60)) {
$iNum = intval($iTimeElapsed); $sUnit = "second";
} else if ($iTimeElapsed < (60*60)) {
$iNum = intval($iTimeElapsed / 60); $sUnit = "minute";
} else if ($iTimeElapsed < (24*60*60)) {
$iNum = intval($iTimeElapsed / (60*60)); $sUnit = "hour";
} else if ($iTimeElapsed < (30*24*60*60)) {
$iNum = intval($iTimeElapsed / (24*60*60)); $sUnit = "day";
} else if ($iTimeElapsed < (365*24*60*60)) {
$iNum = intval($iTimeElapsed / (30*24*60*60)); $sUnit = "month";
} else {
$iNum = intval($iTimeElapsed / (365*24*60*60)); $sUnit = "year";
}

return $iNum . " " . $sUnit . (($iNum != 1) ? "s" : "");
}

要使用此函数,您需要先将时间转换为 time_t 格式(自“纪元”以来的整数#seconds)。这些 PHP 函数中的任何一个都可能对此有所帮助:http://php.net/strptimehttp://php.net/strtotime .

关于php - 日期/时间转换为自 php 以来的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2952361/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com