快速提问,我已经有了这个程序,它给了我01.01.2000
以来的秒数。
E.g。 12.02.2016 11:23:55
的秒数大约为508590531
秒。
是否有一个方法给出了秒数和开始日期,它计算结束日期?
我知道我可以计算手动传递的分钟数/天数/月数/年数,然后尝试计算“结束时间”'但我必须小心谨慎,例如错过闰年,我不会犯错误。
快速定义只是为了完全清楚:
Start Date : 01.01.2000
End Date: Current Date
Time passed: Seconds passed between start date and end date
答案 0 :(得分:3)
不确定
您可以相互减去并使用TimeSpan.TotalSeconds
property之类的;
var ts = DateTime.Now - new DateTime(2000, 1, 1);
Console.WriteLine(ts.TotalSeconds);
如果您希望将其作为int
获取,则可以明确地将其转换为(int)ts.TotalSeconds
。
如果已经有秒,并且您想根据开始日期进行计算,则可以使用AddSeconds
method之类的;
var dt = new DateTime(2000, 1, 1).AddSeconds(508590531); // {12.02.2016 11:08:51}
答案 1 :(得分:3)
这很容易。只需添加秒数,无需魔法或新解决方案。
DateTime AddedFrom2000 = new DateTime(2000, 1, 1).AddSeconds(508590531);
答案 2 :(得分:1)
'components' => [
.....
'authManager' => [
'class' => 'yii\rbac\DbManager',
'cache' => 'cache',
....
],