// // DateExt.swift // ExtensionKit // // Created by FFIB on 2017/9/24. // Copyright © 2017年 FFIB. All rights reserved. // import UIKit extension String { public func convertTimeStringToDate(format: String) -> Date? { var t = tm() strptime(self, format, &t) t.tm_isdst = -1 let date = mktime(&t) return Date(timeIntervalSince1970: TimeInterval(date) + TimeInterval(TimeZone.current.secondsFromGMT())) } } extension Date { public func getTimeString(format: String) -> String { let dateFormatter = DateFormatter() dateFormatter.dateFormat = format return dateFormatter.string(from: self) } public func getTimeInfoFromDate() -> String { let dateNow = Date() let time = dateNow.timeIntervalSince(self) - 28800 var retTime: TimeInterval = 1.0 if time < 3600 { retTime = time / 60 var retTimeInt = Int(retTime) retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt return "\(retTimeInt)分钟前" } else if (time < (3600 * 24)) { retTime = time / 3600 var retTimeInt = Int(retTime) retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt return "\(retTimeInt)小时前" } else if (time < 3600 * 24 * 7) { retTime = time / (3600 * 24) var retTimeInt = Int(retTime) retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt return "\(retTimeInt)天前" } else if (time < 3600 * 24 * 30) { retTime = time / (3600 * 24 * 7) var retTimeInt = Int(retTime) retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt return "\(retTimeInt)周前" }else if (time < 3600 * 24 * 7 * 365) { retTime = time / (3600 * 24 * 7 * 30) var retTimeInt = Int(retTime) retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt return "\(retTimeInt)月前" } else { retTime = time / (3600 * 24 * 7 * 365) var retTimeInt = Int(retTime) retTimeInt = retTimeInt <= 0 ? 1 : retTimeInt return "\(retTimeInt)年前" } } }