与 PHP 的 gmmktime() 等效的 Dart/Flutter 是什么?

我需要计算 Dart/Flutter 中的值,如PHP 中的gmmktime() 函数计算的那样

这就是我到现在为止一直在尝试的:

var ms = (DateTime.now().toUtc().millisecondsSinceEpoch)/100;
int ms = DateTime.now().toUtc().millisecondsSinceEpoch;

但是这两种方法都给出了一个值,这是此 API 在其标头中不期望的值,此处:https : //api.kitewalk.com/#authentication


德玛西亚99
浏览 199回答 1
1回答

慕村9548890

PHPgmmktime被记录为返回“ Unix 时间”,这是自“Unix 纪元”以来的秒数。您的第一种方法几乎是正确的,但是您没有正确地从毫秒转换为秒。一秒有 1000 毫秒,因此您需要除以 1000,而不是 100。此外,无论您将时间传递给什么,都可能需要整数秒而不是浮点值,因此您需要使用整数除法或四舍五入之后的商。另请注意,“Unix 纪元”与时区无关;DateTime.millisecondsSinceEpoch已经针对固定时间点进行了测量,因此不需要显式转换为 UTC(但它不会造成伤害)。正确的版本是:var unixTime = DateTime.now().millisecondsSinceEpoch ~/ 1000;
打开App,查看更多内容
随时随地看视频慕课网APP