【问题标题】:ASP: convert milliseconds to dateASP:将毫秒转换为日期
【发布时间】:2009-07-06 16:08:06
【问题描述】:

我需要将 PHP 应用程序创建的毫秒字段转换为日期值。有没有办法使用 VBScript 做到这一点?还是在 SQL 2005 中转换为日期时间?

示例:1113192000mm/dd/yyyy hh:mm:ss

【问题讨论】:

    标签: date asp-classic vbscript


    【解决方案1】:

    类似下面的东西应该可以工作:

    Function ConvertPhpToDate(numSeconds)
      Dim dEpoch
      dEpoch = DateSerial(1970,1,1)  
      ConvertPhpToDate = DateAdd("s",numSeconds,dEpoch) 
    End Function
    

    注意,php time() 函数返回“秒”的数量,而不是毫秒。 http://php.net/manual/en/function.time.php

    【讨论】:

      【解决方案2】:

      我认为您所说的毫秒实际上是 php 的时间/日期函数返回的纪元时间。您可以给这个函数一个镜头,以在 ASP 中将纪元时间转换为日期时间格式:

      函数 epoch2date(myEpoch)

      epoch2date = DateAdd("s", myEpoch, "01/01/1970 00:00:00")

      结束函数

      来源:http://www.epochconverter.com/epoch/functions.php#asp

      【讨论】:

        【解决方案3】:
        msValue = 32312312
        dtValue = DateAdd("s", msValue/1000, CDate("1970-01-01 00:00:00"))
        

        将其包装在一个函数中:

        Function TimestampToDate(timestamp)
          TimestampToDate = DateAdd("s", timestamp/1000, CDate("1970-01-01 00:00:00"))
        End Function
        

        【讨论】:

          【解决方案4】:

          您需要有一个基准时间来计算毫秒数,例如1970 年 1 月 1 日或类似日期。

          然后您将毫秒数除以 1000 得到秒数 - 保存余数。

          将秒数除以 60(保存余数)得到分钟数。

          然后是 60 小时,24 天。

          那么这会变得很困难,因为您需要考虑闰年。有another question on this here

          获得年、日、小时、分钟、秒和毫秒后,将其添加到基本日期时间以获取表示的日期时间。

          其他人发布了您可能使用的代码等。

          【讨论】:

          • 好的。如果基准时间是 1970 年 1 月 1 日怎么办。转换它的代码是什么?谢谢。
          猜你喜欢
          • 2019-12-24
          • 1970-01-01
          • 2010-10-08
          • 1970-01-01
          • 1970-01-01
          • 2019-12-05
          • 2011-06-08
          • 1970-01-01
          相关资源
          最近更新 更多