给定一个特定DateTime值,我如何显示相对时间,如:
我有两个日期:
Start Date: 2007-03-24
End Date: 2009-06-26
Run Code Online (Sandbox Code Playgroud)
现在我需要通过以下形式找到这两者之间的差异:
2 years, 3 months and 2 days
Run Code Online (Sandbox Code Playgroud)
我怎么能用PHP做到这一点?
必须有一种更简单的方法来做到这一点.我有想要每隔一段时间刷新的对象,所以我想记录它们的创建时间,检查当前的时间戳,并根据需要进行刷新.
datetime.datetime已被证明是困难的,我不想深入了解ctime库.这种事情有什么比较容易的吗?
TimeUnit.DAYS.convert(
Math.abs(
new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").parse("30-03-2020 00:00:00").getTime() -
new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").parse("1-03-2020 00:00:00").getTime()
),
TimeUnit.MILLISECONDS)
Run Code Online (Sandbox Code Playgroud)
结果是 28,而它应该是 29。
时区/位置可能是问题吗?
在Ruby on Rails中,有一个功能允许你采取任何日期并打印出"很久以前"的样子.
例如:
8 minutes ago
8 hours ago
8 days ago
8 months ago
8 years ago
Run Code Online (Sandbox Code Playgroud)
在Java中有一种简单的方法吗?
我如何计算JavaScript中两个Date()对象的差异,而只返回差异中的月数?
任何帮助都会很棒:)
我需要一个函数,可以将以下两个日期之间的差异返回为24.
DateTime a = new DateTime(2008, 01, 02, 06, 30, 00);
DateTime b = new DateTime(2008, 01, 03, 06, 30, 00);
Run Code Online (Sandbox Code Playgroud) 有没有快速的方法来计算PHP中的日期差异?例如:
$date1 = '2009-11-12 12:09:08';
$date2 = '2009-12-01 08:20:11';
Run Code Online (Sandbox Code Playgroud)
然后做一个计算,$ date2减去$ date1
我读了php.net文档,但没有运气.有快速的方法吗?
我需要找到两个日期之间的天数:一个来自报告,一个是当前日期.我的片段:
int age=calculateDifference(agingDate, today);
Run Code Online (Sandbox Code Playgroud)
这calculateDifference是一个私有方法,agingDate并且today是Date对象,仅供您澄清.我已经关注了Java论坛中的两篇文章,即Thread 1/Thread 2.
它在独立程序中运行良好,但是当我将其包含在我的逻辑中以从报告中读取时,我会得到一个不寻常的值差异.
为什么会发生这种情况?我该如何解决?
编辑:
与实际天数相比,我获得的天数更多.
public static int calculateDifference(Date a, Date b)
{
int tempDifference = 0;
int difference = 0;
Calendar earlier = Calendar.getInstance();
Calendar later = Calendar.getInstance();
if (a.compareTo(b) < 0)
{
earlier.setTime(a);
later.setTime(b);
}
else
{
earlier.setTime(b);
later.setTime(a);
}
while (earlier.get(Calendar.YEAR) != later.get(Calendar.YEAR))
{
tempDifference = 365 * (later.get(Calendar.YEAR) - earlier.get(Calendar.YEAR));
difference += tempDifference;
earlier.add(Calendar.DAY_OF_YEAR, tempDifference);
} …Run Code Online (Sandbox Code Playgroud) 如何计算两年中两个日期之间的日期差异?
例如:(Datetime.Now.Today() - 11/03/2007)多年.