gpt4 book ai didi

mysql - 从 MySQL UTC 时间戳字符串创建 ActionScript 日期对象

转载 作者:行者123 更新时间:2023-11-29 02:02:59 26 4
gpt4 key购买 nike

我将日期存储在 MySQL 表的 datetime 列中。我通过调用 MySql's UTC_CURRENTDATE 插入当前日期.当我检索它时,它采用以下字符串格式:"2012-07-24 12:59:58"

当我尝试通过执行以下操作在 Action Script 中创建 Date 对象时:

var dateNum:Number = Date.parse(createDate); // this gives me NaN
var createDate:Date = new Date(dateNum);

Date.parse("2012-07-24 12:59:58") 给出 NaN

解决方案:按照 Jason 的建议,我正在执行以下操作:

选择 UNIX_TIMESTAMP (CREATE_DATE) 返回自“1970-01-01 00:00:00”UTC 以来的秒数。然后在 Actionscript 中执行以下操作:

var createDate:Date = new Date();
var offset:Number = createDate.getTimezoneOffset() * 60 * 1000;
createDate.time = parseInt("1343174921") * 1000 - offset;

这给了我正确的日期。

最佳答案

虽然我确信有更优雅的方法;显然你可以实现一个解析函数,例如:

public static function parse(date:String):Date
{
var split:Array = date.split(" ");
var splitDate:Array = split[0].split("-");
var splitTime:Array = split[1].split(":");

return new Date(splitDate[0],
splitDate[1] - 1,
splitDate[2],
splitTime[0],
splitTime[1],
splitTime[2]);
}

称为:

var date:Date = parse("2012-07-24 12:59:58");

您的 SQL 语句可以转换为时间戳,而不是处理 MySQL DATETIME,ActionScript Date 构造函数将接受自纪元以来的毫秒数。

框架,例如 CASA Lib有很好的日期效用函数。

关于mysql - 从 MySQL UTC 时间戳字符串创建 ActionScript 日期对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11632421/

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