【发布时间】:2014-08-29 09:46:41
【问题描述】:
我正在为此浏览 STO 和网络,但找不到任何相关内容。
我正在寻找一种方法/函数来打印出可读的未来时间,例如:
- 3 小时后
- 一年后
我将未来的日期存储到表中的 datetime 列中,我需要它来预测发布时还剩多少时间等。
这样的事情已经完成了吗?如果是这样 - 请帮忙。
这是我目前在 PHP 中的 timeago:
(我也有这个方法的本地化版本,用于塞尔维亚-克罗地亚-波斯尼亚语)
public static function time_elapsed($ptime) {
$etime = time() - $ptime;
if ($etime < 1) {
return '0 seconds';
}
$a = array(12 * 30 * 24 * 60 * 60 => 'year',
30 * 24 * 60 * 60 => 'month',
24 * 60 * 60 => 'day',
60 * 60 => 'hour',
60 => 'min',
1 => 'sec'
);
foreach ($a as $secs => $str) {
$d = $etime / $secs;
if ($d >= 1) {
$r = round($d);
return $r . ' ' . $str . ($r > 1 ? 's' : '') . ' ago';
}
}
}
【问题讨论】:
-
我不明白你的意思...请详细说明。
-
这是一个未来的日期,比如 2014-07-31,> 3 周后...我正在将我的代码发布在帖子中,请稍候。
-
Reversed timeago 对我来说意味着您有字符串“从现在起 3 年”并且想要一个日期。在 PHP 中,您将使用
strtotime('now + 3 years')获取时间戳,您可以使用date()将其格式化为日期。首先,您还没有说“从现在起 3 年内”从哪里得到字符串。 -
不,我不想要日期,因为我已经将它存储在表中。我想将该日期转换为可读的字符串,例如:“从现在起 666 年”等。
-
我已经说过了:我有一个timeago的解决方案!我现在需要反之亦然。
标签: javascript php jquery timeago