gpt4 book ai didi

Coldfusion DateDiff 使用超过 24 小时的时间格式

转载 作者:行者123 更新时间:2023-12-02 08:56:15 26 4
gpt4 key购买 nike

我目前正在跟踪人们在我们网站上的时间。

每个用户都设置了一定的时间,无论是 00:10:00(10 分钟)还是 100:00:00(100 小时)。

当我使用这行代码时出现问题:

<cfset seconds_left = datediff("s",variables.time_used,form.site_time)>

如果这些变量之一超过 24 小时 (24:00:00),则会抛出错误:

40:00:00 is an invalid date or time string.

任何有关如何解决此问题的建议都很好,谢谢!

最佳答案

选项 1:跟踪有效的日期时间值。登录(或首次访问)时设置 <cfset session.start_time = now()> 。要确定持续时间,计算如下:

<cfset duration = dateDiff("s", session.start_time, now()))>

选项 2:将您正在使用的时间值转换为秒并进行简单的减法。

<cffunction name="ts2secs" output="false" access="public" returntype="numeric" hint="Take a time string and return number of seconds">
<cfargument name="ts" type="string" required="true" hint="formated as h:m:s"/>
<cfset var local = structNew()/>
<cfset var pieces = listToArray(arguments.ts, ":")>
<cfset var hours = pieces[1]>
<cfset var minutes = pieces[2]>
<cfset var seconds = pieces[3]>
<cfreturn (hours * 60 * 60) + (minutes * 60) + seconds>
</cffunction>

<cfset duration = ts2secs(variables.time_used) - ts2secs(form.site_time)>

关于Coldfusion DateDiff 使用超过 24 小时的时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4672397/

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