获取两小时之间的分钟差异,例如:12:20:00
和12:15:00
。结果是:5
。
我在PHP中有一个字符串“容纳”一段时间,就像上面的例子一样。使用JavaScript时,当分钟的差异大于3时,我需要启用按钮。换句话说,这就是我在PHP中所拥有的:10:00:00
这就是{ {1}}对象在JavaScript中为我带来了Date()
。
我需要获取Thu Oct 10 2013 11:29:49 GMT-0300 (Hora oficial do Brasil)
并与11:29:49
进行比较以获得分钟的差异。如果此差异大于3,则执行某些操作。
这就是我正在尝试的,但当然不起作用。由于变量的类型不同,因此无法计算差异。
10:00:00
有人可以给我一个想法吗?
答案 0 :(得分:1)
首先,像老板一样管理你的时间。编程语言中的时间计算为自设置日期以来的秒数或毫秒数(我们称之为Unix时间戳 - 1970年1月1日00:00:00 UTC )。
正如您所理解的那样,使用此标准格式的日期是最好的,因为您只需要两个可以比较的整数。
在JavaScript和PHP中,这些日期格式是默认格式,非常易于使用。
JS:new Date().getTime()
PHP:time()
和日期构造函数(但在这里,我可以提供很多帮助,您的应用程序的业务逻辑只有您自己知道)
因此,以便捷的标准格式(UTC格式)从PHP转换您的时间。然后用它来分享语言之间的日期并将它们进行比较。
答案 1 :(得分:0)
将两个日期转换为毫秒,并进行比较。如果他们在18000年之内,他们在3分钟内。 js中的Date.getTime()将为您完成此任务。
答案 2 :(得分:0)
在使用某些Regex或String.split函数进行处理之前,您可以尝试将PHP日期转换为Javascript日期。
答案 3 :(得分:0)
你能否使用JodaTime,将你的日期转换为LocalDateTime然后比较?这似乎有效:
public static void main(String[] args) {
LocalDateTime date1 = new LocalDateTime(2013,10,10,12,15,0);
LocalDateTime date2 = new LocalDateTime(2013,10,10,12,20,0);
assertEquals( 5, Minutes.minutesBetween(date1, date2).getMinutes() );
}
答案 4 :(得分:0)
var fantasyHours = new Date(<?php echo $application->time(); ?> * 1000)
那应该给你从PHP到JavaScript的时间。您现在可以检查两个日期对象以查看差异。
需要* 1000,因为PHP unix时间以秒为单位,new Date()
需要几毫秒。