时间单位(Time Units)
优质
小牛编辑
132浏览
2023-12-01
seconds
,minutes
,hours
,days
,weeks
,years
均可做为后缀,并进行相互转换,默认是seconds
为单位。
默认规则如下:
- 1 == 1 seconds
- 1 minutes == 60 seconds
- 1 hours == 60 minutes
- 1 days == 24 hours
- 1 weeks = 7 days
- 1 years = 365 days
如果你需要进行使用这些单位进行日期计算,需要特别小心,因为不是每年都是365天,且并不是每天都有24小时,因为还有闰秒。由于无法预测闰秒,必须由外部的oracle来更新从而得到一个精确的日历库(内部实现一个日期库也是消耗gas的)。
后缀不能用于变量。如果你想对输入的变量说明其不同的单位,可以使用下面的方式。
pragma solidity ^0.4.0;
contract DeleteExample{
function nowInSeconds() returns (uint256){
return now;
}
function f(uint start, uint daysAfter) {
if (now >= start + daysAfter * 1 days) {
}
}
}