Swift 从 Firebase ServerValue.timestamp() 得到错误的日期

Posted

技术标签:

【中文标题】Swift 从 Firebase ServerValue.timestamp() 得到错误的日期【英文标题】:Got wrong date from FirebaseServerValue.timestamp() by Swift 【发布时间】:2015-07-27 02:41:02 【问题描述】:

现在我正在使用 Firebase.com 作为后端 Swift 开发 ios 应用程序

首先我尝试通过这个函数来计时

var userHistoryForupdate = ["dealdate":FirebaseServerValue.timestamp()]

userHistoryRef.updateChildValues(userHistoryForupdate as [NSObject : AnyObject], withCompletionBlock: 
    (error:NSError?, ref:Firebase!) in
    if (error != nil) 

     else 

    
)

然后在其他视图中我通过这个函数检索时间

var tempPubdate = self.pubDataArray[indexPath.row]["dealdate"] as! Double

dateFormatter.dateFormat = "dd MMM yy"

var dealDateAndTime = NSDate(timeIntervalSince1970: tempPubdate)

cell?.historyDate.text = "\(self.dateFormatter.stringFromDate(dealDateAndTime))"

还有我的单元格显示

如您所见,我今天不是 38 年 1 月 23 日。

任何人都知道我如何从 firebase 获得正确的日期谢谢!

【问题讨论】:

【参考方案1】:

timeIntervalSince1970 需要几秒钟,而来自 firebase 的时间戳以毫秒为单位。

【讨论】:

我怎样才能将其转换为 / 100?【参考方案2】:

timeIntervalSince1970 需要几秒钟,而来自 firebase 的时间戳以毫秒为单位。你可以通过除以 1000 来解决它

let date = NSDate(timeIntervalSince1970: timeStamp / 1000 )

【讨论】:

以上是关于Swift 从 Firebase ServerValue.timestamp() 得到错误的日期的主要内容,如果未能解决你的问题,请参考以下文章

从 firebase (Swift) 获取子节点

如何从 Firebase (Swift) 中删除一个孩子

Swift4:从 Firebase 下载照片

从 Firebase 检索和读取数据作为 NSArray (Swift 3)

Swift 从 Firebase 检索数据

从 firebase 获取数据到 UITableViewController - swift